Novembre 2024 | Lun | Mar | Mer | Jeu | Ven | Sam | Dim |
---|
| | | | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | | Calendrier |
|
|
| Explorateur particulier | |
| | Auteur | Message |
---|
Oscaribout
Nombre de messages : 471 Date d'inscription : 29/12/2016
| Sujet: Explorateur particulier Dim 24 Déc 2017 - 16:34 | |
| Bon suite au sujet suivant: Problème de lancement...Programme rechargé le 25 déc à 17 h 30 pour remplacer la barre oblique en chr$(92) à cause des problèmes du forum.Nouvelle version 27/déc 17 à 19 h 00Nouvelle version le 28/12/17. Ajout d'un teste pour éviter l'ajout d'une ligne vide dans les raccourcis.Edit important: J'ai oublié de dire ce programme utilise la dll de KlausVoici le programme - Code:
-
' Explorer avec prise de note des fichiers
label disque , dossier , choix , parent , fichier , ajout , principal , sauve_info , efface_filtre label modif26 , l_list , lecture_fiche , supprime7 , erreur , go_filtre , fichier_item label monte_item , descendre_item ,check27 , execute11 , efface_11 dim bas$ [color=#006699][/color]' ################################################## dll_on "c:\kgf.dll" bas$= "C:\PANO\B_P\INSTANTANE_8-7-17\PANORAMIC.exe" :' pour exécuter les prg.bas ' ################################################## hide 0 ' dossier de travail if DIR_EXISTS("C:\temp") = 0 then dir_make "C:\temp" dir_change "C:\temp\" dim instal$:instal$=dir_current$ :' "C:\temp\"
top 0,screen_y/2-400 : caption 0,"Explorateur"
dim f$ ,a% , test% ,a$ , b$ ,d$ , dossier$ ,boite_vue% , bin% , v%(10000) , le% , dos$ ,t$:t$=chr$(13) dim dir_parametre$ , dossierSCANNEUR$ , programSCANNEUR$ , fiche$ ,i% , img$ , x%,y% , prg$ , clic24% dim o% , o$ , l0%,l1% , w0% , w1% ,filtre% ,tron$ , memoir$ , menu70% , t1%,t2% , execute% ,nom_court$ o% = 250 : ' écart
width 0,700+o% :height 0,560 :border_small 0 color 0,190,190,190:top 0,010:left 0,200 picture 5:full_space 5 : left 5,3:top 5,3 : width 5,width(0)-22:height 5,height(0)-48 color 5,210,220,220
dir_change "C:\" open_dialog 150
alpha 23:left 23,10: top 23,78:color 23,255,204,102 : font_bold 23
alpha 16:top 16, 95:left 16,55:font_color 16,255,255,0:font_bold 16:font_size 16,14 caption 16,"Raccourcis" list 24:left 24,10: top 24,120:width 24,220 : height 24,385 : color 24,210,220,220 : font_bold 24 :on_click 24,principal hint 24,"_______Raccourcis_______"+chr$(13)+"Dossiers en MAJUSCULE"+chr$(13)+"fichiers en MINUSCULE" font_name 24,"Microsoft Sans Serif" button 20:left 20,235: top 20,160:width 20,15:height 20,20: caption 20,chr$(241):font_name 20,"Wingdings" :font_size 20,15 hint 20,"Monte la ligne d'un cran"+t$+"Le coche doit-être sur 'modifie'" button 21:left 21,235: top 21,200:width 21,15:height 21,20: caption 21,chr$(242):font_name 21,"Wingdings" :font_size 21,15 hint 21,"Descend la ligne d'un cran"+t$+"Le coche doit-être sur 'modifie'" on_click 20,monte_item : on_click 21,descendre_item check 27:left 27,170: top 27,100 : caption 27,"marche" : mark_on 27: width 27,60 : on_click 27,check27 hint 27,"Marche: exécution du programme"+t$+"modifie: déplacement des items "+t$+"ou suppression de la ligne" dlist 25:' dossier des dossier de la list 10 if file_exists(instal$+chr$(92)+"explore_dos.fic") = 1 file_load 25,instal$+chr$(92)+"explore_dos.fic" file_load 24,instal$+chr$(92)+"explore_name.fic" end_if button 8:left 8,25:width 8,60:height 8,25:caption 8,"Ajout":top 8,35 : on_click 8,ajout hint 8,"ajoute le raccourcis du dossier"+ chr$(13)+"ou du fichier cliqué en dernier"+chr$(13)+caption$(23) button 7:left 7,100:width 7,60:height 7,25:caption 7,"Supprime":top 7,35 : on_click 7,supprime7 hint 7,"Le coche doir être sur: 'modifie'"+t$+"pour supprimer" edit 15:top 15,50:left 15,5+o%:width 15,435:font_size 15,10:font_bold 15:color 15,255,255,153 on_click 15,l_list : hint 15,"NOM du fichier"+t$+" ---------------"+t$+"En cliquant ici, on modifie "+t$+"l'affichage des fichiers" MEMO 26:left 26,left(15)+440 :top 26,50:width 26,width(0)-20-left(26)-10: height 26,200 color 26,192,192,192 : on_change 26,modif26 : hide 26 : hint 26,"INFORMATION sur le fichier"
' objet WB Klaus dim res%,wb%,hnd% , res_l%,res_t%,res_w%,res_h% , url$ res_l% = left(26) res_t% = top(26) + height(26)+10 res_w% = width(26) res_h% = height(0)-top(26)-height(26)-60 hnd% = handle(0) res% = dll_call1("WBCreate",hnd%) res% = dll_call4("WBLocate",res_l%,res_t%,res_w%,res_h%) container 36:left 36,res_l%:top 36,res_t%:width 36,res_w%:height 36,res_h%:color 36,210,220,220 :' pour cacher le browser ' -------------------------
button 31 :left 31,width(0)-80:top 31,25:height 31,25:width 31,60:caption 31,"Sauve info" :on_click 31,sauve_info : hide 31 height 31,18 memo 35:left 35,left(26):top 35,200:width 35,width(26): height 35,300 :color 35,200,200,200:bar_vertical 35 : hide 35
button 22:top 22,66+30:left 22,10+o%:width 22,45:height 22,18:caption 22,"parent":on_click 22,parent : font_size 22,8 alpha 19:top 19,65+30:left 19,80+o%:font_color 19,255,255,255:font_bold 19:font_size 19,10:caption 19,"dossier(s)" alpha 6:top 6,65+30:left 6,500:font_color 6, 255,255,255:font_bold 6 :font_size 6, 10:caption 6,"Fichier(s)"
list 10:top 10,85+30:left 10,5+o%:width 10,230:height 10,390-30:font_size 10,8:font_bold 10:color 10,255,255,204 on_click 10,choix :font_name 10,"Microsoft Sans Serif" list 11:top 11,85+30:width 11,200:left 11,240+o%:height 11,305-30 : font_name 11,"Microsoft Sans Serif" :font_bold 11 L1%=left(11) : L0% = left(10)+50 : w1%=width(11) : w0%= w1%+180 : on_click 11,fichier_item alpha 13:top 13,5:left 13,190:font_color 13,255,255,255:font_bold 13:font_size 13,10:caption 13,"Lecteur:" list 14:top 14,21:left 14,190:height 14,50:width 14,52:font_size 14,11:color 14,255,255,210 : on_click 14,disque for a%=asc("C") to asc("Z") a$= chr$(a%)+":" : if dir_exists(a$)=1 then item_add 14,a$ next a% : ' remplir le list 14, de tous les disques existant. Reste qu'il n'y a pas de mise à jour
alpha 17:top 17,500:left 17,5+o%:font_color 17,255,255,255:font_bold 17:font_size 17,10:caption 17,"créé nouveau dossier :" dlist 30 : dlist 34
form 40:hide 40 :left 40,left(0)+50:top 40,top(0)+20:width 40,width(0)-70:height 40,height(0)-50 : border_small 40 memo 41:parent 41,40:full_space 41 : font_size 41,10:font_bold 41 : bar_both 41
button 45:left 45,575:top 45,96:caption 45,"lecture":width 45,45:on_click 45,lecture_fiche :height 45,18 ' °°°°°°°°°°°°°°°°°°°°°°°°°°°°° ' ZONE de filtrage dans la recherche container 50:left 50,left(15):width 50,width(0)-left(50)-100:height 50,35 :' hide 50 alpha 51:parent 51,50:left 51,15: top 51,0:caption 51,"début" edit 52:parent 52,50:left 52,5:width 52,100:font_size 52,7:font_bold 52:top 52,10 ' alpha 53:parent 53,50:left 53,135:top 53,0:caption 53,"milieu" edit 54:parent 54,50:left 54,120:width 54,100:font_size 54,7:font_bold 54:top 54,10 ' alpha 55:parent 55,50:left 55,250:top 55,0:caption 55,"extension" edit 56:parent 56,50:left 56,235:width 56,100:font_size 56,7:font_bold 56:top 56,10 button 58:parent 58,50:left 58,350:width 58,80:top 58,10:caption 58,"GO":height 58,20:on_click 58,go_filtre button 57:parent 57,50:left 57,510:top 57,10:caption 57,"efface tout":on_click 57,efface_filtre height 57,20: width 57,80 ' ----------------------------------------- button 12:left 12,623:top 12,93:caption 12,"J":font_name 12,"Wingdings" :font_size 12,16:width 12,24:height 12,24 on_click 12,execute11 : font_bold 12 : hint 12,"exécution du fichier" button 18:left 18,650:top 18,96:caption 18,"Efface": width 18,40:height 18,20 : on_click 18,efface_11 show 0
END : ' @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
' _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ ' _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ check27: off_click 27 if checked(27) = 0 mark_off 27 : caption 27,"modifie" else mark_on 27 : caption 27,"marche" end_if on_click 27,check27 return ' _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ ' _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ monte_item: if checked(27) = 0 if item_index(24) > 0 clic24% = item_index(24) end_if
if clic24% > 1 a$ = item_read$(24,clic24%) : b$ = item_read$(25,clic24%) item_delete 24,clic24% : item_delete 25,clic24% clic24%=clic24%-1 item_insert 24,clic24%,a$ : item_insert 25,clic24%,b$ end_if file_save 25,instal$+chr$(92)+"explore_dos.fic" file_save 24,instal$+chr$(92)+"explore_name.fic" end_if return ' _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ ' _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ efface_11: a$ = caption$(23) if message_confirmation_yes_no("Etes-vous sûr de vouloir effacer:"+t$+a$) = 1 file_delete a$ item_delete 11,item_index(11) end_if return ' _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ ' _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ descendre_item: if checked(27) = 0 if item_index(24) > 0 clic24% = item_index(24) end_if
if clic24% < count(24) a$ = item_read$(24,clic24%) : b$ = item_read$(25,clic24%) item_delete 24,clic24% : item_delete 25,clic24% clic24%=clic24%+1 item_insert 24,clic24%,a$ : item_insert 25,clic24%,b$ end_if file_save 25,instal$+chr$(92)+"explore_dos.fic" file_save 24,instal$+chr$(92)+"explore_name.fic" end_if return ' _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ ' _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ supprime7: if checked(27) = 0 i%=item_index(24) if i% > 0 if message_confirmation_yes_no("Etes-vous sûr de vouloir supprimer le raccourcis"+chr$(13)+item_index$(24)) = 1 item_delete 24,i% : item_delete 25,i% file_save 25,instal$+chr$(92)+"explore_dos.fic" file_save 24,instal$+chr$(92)+"explore_name.fic" end_if end_if end_if return ' _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ ' _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ efface_filtre: text 52,"" : text 54,"" : text 56,"" return ' _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ ' _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ erreur: if message_information_yes_no("On arrête à une erreur de lecture sur le fichier:")+fiche$) = 1 then stop:else :fiche$="" ' on continu sur lecture_fiche, goto de l'erreur oblige lecture_fiche: on_error_goto erreur if file_exists(fiche$)=1 then file_load 41,fiche$ :show 40 off_error_goto return ' _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ ' _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ l_list: if left(11) = L1% left 11,l0%:width 11,w0% else left 11,l1%:width 11,w1% end_if return ' _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ ' _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ fichier_item: fiche$ = item_index$(11) :le% = len(fiche$) fichier: off_click 11 : filtre%=0 clear 26:color 26,220,220,220 : hide 31:' hide 27 ' 26= memo 27= hviewer show 36 dos$ = dir_current$ + chr$(92) if file_exists(dos$+ "zzzexplore.info") = 1 file_load 30,dos$+"zzzexplore.info" if item_read$(30,count(30)) = "" then item_delete 30,count(30) else clear 30 end_if
text 15,fiche$ img$ = file_extract_extension$(lower$(fiche$)) if img$ = ".jpg" or img$ = ".bmp" or img$=".png" or img$=".gif" :' or img$ = ".html" or img$ = ".htm" if img$ = ".html" or img$ = ".htm" : ' il faut faire un script htlm pour hviewer a$ = caption$(23)+text$(15) res% = dll_call1("WBUrl",adr(a$)) hide 36 else hviewer(fiche$) end_if end_if
if filtre% = 0 if count(30) > 0 for a% = 1 to count(30) a$ = item_read$(30,a%) clear 26 : ' remplir le memo INFO 26 if left$(lower$(a$),le%) = lower$(fiche$) :' fiche$ est le nom du fichier a$ = right_pos$(a$,le%+2) repeat i%=instr(a$,chr$(15)) if i%>0 b$ = left$(a$,i%-1) a$ = right_pos$(a$,i%+1) item_add 26,b$ else item_add 26,a$ end_if until i%=0 or scancode = 27 show 26 : color 26,255,255,255 exit_for end_if next a% end_if end_if caption 23,dir_current$ + chr$(92) + fiche$ : clipboard_string_copy caption$(23) hint 8,"ajoute le raccourcis du dossier"+ chr$(13)+"ou du fichier cliqué en dernier"+chr$(13)+caption$(23) show 26 : hide 31 on_click 11,fichier_item filtre%=0 return ' _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ ' _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ disque: left 11,l1% : width 11,w1% f$ = "..":for a%=1 to 10:dir_change f$:next a% f$= item_index$(14):dossier$=f$+chr$(92) : dir_change f$ : memoir$=f$ gosub dossier return ' _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ ' _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ sub filtre(b$) ' on peut ici faire les teste et sortir si les filtres sont négatifs filtre%= 3 o$ = lower$(text$(52)) : le% = len(o$) ' début de teste if o$ = "" filtre%=filtre%-1 else if left$(lower$(o$),le%) = left$(b$,le%) then filtre%=filtre% -1 end_if ' milieu o$ = lower$(text$(54)) : le% = len(o$) if o$ = "" filtre% = filtre%-1 else if instr(lower$(b$),o$) > 0 AND right$(b$,le%) <> o$ then filtre% = filtre%-1 end_if ' o$ = lower$(text$(56)) : le% = len(o$) if o$ = "" filtre%=filtre%-1 else if right$(b$,le%) = o$ then filtre% = filtre%-1 end_if o$ = "" end_sub ' _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ ' _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ dossier: text 15,fiche$ : caption 23,dir_current$ :' message "voir 15 et 23 hint 8,"ajoute le raccourcis du dossier"+ chr$(13)+"ou du fichier cliqué en dernier"+chr$(13)+caption$(23) clear 10:clear 11 a$ = file_find_first$ while a$<>"_" Test%=File_Exists(a$) if Test%=0 :' donc dossier if left$(a$,1) = "." or left$(a$,2) = ".." else item_add 10,a$ end_if else :' fichier filtre(a$) if a$ <> "zzzexplore.info" and filtre% = 0 then item_add 11,a$ end_if a$ = file_find_next$ end_while file_find_close left 11,l1% : width 11,w1% return ' _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ ' _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ parent: left 11,l1% : width 11,w1% : text 15,"" : fiche$ = "" if dossier$ = "" then dossier$ = dir_current$ if right$(dossier$,1) = chr$(92) then dossier$ = left$(dossier$,len(dossier$)-1) dossier$=reverse$(dossier$) : i% = instr(dossier$,chr$(92)) if i% > 0 dossier$ = right_pos$(dossier$,i%) : dossier$ = reverse$(dossier$) else dossier$ = reverse$(dossier$) end_if dir_change dossier$ :memoir$=dossier$ : gosub dossier hide 26 : show 36 return ' _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ ' _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ ' appel par list 10 ou bouton 58:GO choix: F$=item_index$(10) : memoir$ = f$ go_filtre: left 11,l1% : width 11,w1% hide 26:clear 26 : text 15,"" : fiche$ = "" if dir_exists(memoir$) = 1 then dir_change memoir$ dossier$=dir_current$+chr$(92) if item_index(10)>0
else tron$ = "" for a%=len(dossier$) to 1 step -1 tron$ = tron$ +"|"+str$(a%)
if mid$(dossier$,a%,1) = chr$(92) then exit_for next a% if a%>2 then dossier$=left$(dossier$,a%-1) end_if gosub dossier return ' _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ ' _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ ajout: a$ = dir_current$ b$ = caption$(23) if b$ <> "" if dir_exists(b$) = 1 if file_extract_name$(b$) <> "" item_add 24,upper$(file_extract_name$(b$)) item_add 25,"1)" + dir_current$+chr$(92) end_if else item_add 24,lower$(file_extract_name$(b$)) item_add 25,"0)" + dir_current$+chr$(92) end_if file_save 25,instal$+chr$(92)+"explore_dos.fic" file_save 24,instal$+chr$(92)+"explore_name.fic" end_if return ' _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ ' _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ 'appel par list24 raccourcis principal: if checked(27) = 1 a% = item_index(24) principal(a%) end_if return ' _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ ' _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ sub principal(a%) dim_local a$ , flag% , d$ , e$ , folder$ :' 24 est le list des accès direct, avec dlist 25 clear 26:hide 26 : text 15,"" a$ = item_read$(25,a%) : if dir_exists(right_pos$(a$,3)) = 1 then memoir$ = right_pos$(a$,3) :' ex: '1)ici' d$ = left$(a$,2) e$ = right_pos$(item_read$(25,a%),3) : memoir$=e$ dir_change e$ : gosub dossier if d$ = "1)" :' dossier else e$ = e$ + item_read$(24,a%) : fiche$ = item_read$(24,a%) ' ici on prg la lecture éventuelle des infos dos$ = dir_current$ + chr$(92) if file_exists(dos$+ "zzzexplore.info") = 1 file_load 30,dos$+"zzzexplore.info" if item_read$(30,count(30)) = "" then item_delete 30,count(30) else clear 30 end_if ' ---------------------------------------- if right$(lower$(e$),4)=".bas" message e$ nom_court$ = string$(255," ") res% = dll_call2("GetShortName",adr(e$),adr(nom_court$)) nom_court$ = trim$(nom_court$) : message nom_court$ fiche$="" :' bas$ = PANORAMIC.exe , nom_court$ = "source.bas res% = DLL_call4("ExecuteProgram",adr(bas$),adr(nom_court$),adr(fiche$),1) else fiche$="" folder$="" :' programme rien rien res% = DLL_call4("ExecuteProgram",adr(e$),adr(fiche$),adr(folder$),1) end_if ' ---------------------------------------- end_if left 11,l1% : width 11,w1% end_sub ' _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ ' _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ sauve_info: sauve_info() :return : ' lire 26 et cumuler les lignes avec chr$(15) ' _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ sub sauve_info() dim_local a$ , b$ ,i% ,le% le% = len(fiche$) a$ = lower$(fiche$)+"|" if count(26) > 0 for i% = 1 to count(26) a$ = a$ + item_read$(26,i%) + chr$(15) next i% end_if if count(30) = 0 item_add 30,a$ file_save 30,dos$+ "zzzexplore.info" color 26,255,204,100 : pause 500: color 26,255,255,255 else for i% = 1 to count(30) if left$(lower$(item_read$(30,i%)),le%) = lower$(fiche$) item_delete 30,i% item_insert 30,i%,a$ exit_for end_if next i% if i% > count(30) then item_add 30,a$ file_save 30,dos$+"zzzexplore.info" color 26,255,204,100 : pause 500: color 26,255,255,255 end_if hide 31 end_sub ' _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ ' _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ modif26: color 26,240,240,240 : show 31 return ' _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ ' _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ sub hviewer(img$) clear 34 item_add 34," <BODY>" item_add 34,"<img src='"+ dos$ + img$ + "' width='"+str$(res_w%-45)+"'></img>" item_add 34,"</body>" file_save 34, instal$+"\zzzexplode_htm.html" url$ = instal$+"\zzzexplode_htm.html" res% = dll_call1("WBUrl",adr(url$)) hide 36 end_sub ' _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ ' _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ execute11: prg$ = chr$(34) + caption$(23) + chr$(34) if right$(lower$(prg$),4)=".bas" fiche$="" :' bas$ = PANORAMIC.exe , e$ = "source.bas a$ = caption$(23) nom_court$ = string$(255," ") res% = dll_call2("GetShortName",adr(a$),adr(nom_court$)) nom_court$ = trim$(nom_court$) res% = DLL_call4("ExecuteProgram",adr(bas$),adr(nom_court$),adr(fiche$),1) else fiche$="" nom_court$ = string$(255," ") res% = dll_call2("GetShortName",adr(prg$),adr(nom_court$)) nom_court$ = trim$(nom_court$) ' programme rien rien res% = DLL_call4("ExecuteProgram",adr(nom_court$),adr(fiche$),adr(fiche$),1) end_if ' ------ return En rouge sélecteur de disque En bleu: zone de filtrage des fichiers en violet: les raccourcis des dossiers (majuscule) et des fichiers (en minuscule) qui ont déjà étés ajoutés. En marron une list de dossiers et à côté les fichiers. Au départ on clique sur un disque présent et les dossiers et fichiers sont ajoutés au lists concernés. En cliquant sur un dossier, évidemment on entre dans le répertoire. En cliquant sur un fichier, un certain nombre de choses se passe. Dans un temps très court un bouton apparait, si on clique rapidement le fichier est exécuté. Si on attend l'effacement du bouton, à droite se trouve un memo. C'est dans ce memo que l'on peut apporter des infos. Dès que ce dernier est modifié, il s'éclaircis et un bouton "Sauve info" apparait. Devinez! évidemment en cliquant dessus, le contenu est enregistré. En parcourant les fichiers chaque fiche contenant une info est découverte. En même temps pour certain type d'image, un affichage se fait au dessous. En cliquant sur "lecture" le contenu s'affiche dans une autre fenêtre. Il y a une zône pour filtrer les fichiers en haut. Chaque edit peut avoir un filtre qui s'ajoute: le début du nom d'un fichier, le contenu d'une partie interne au nom, et la fin. En cliquant sur "GO" on relance l'affichage du list des fichiers en tenant compte du filtrage. Tant que les filtres sont présent, le clic sur un dossier fait que tous les fichiers sont triés. Il faut effacer les filtres pour avoir le contenu entier du dossier en ce qui concerne les fichiers. L'affichage du bouton pour lancer un programme est provisoire, je reprendrais par la suite pour y mettre un bouton fixe en remplacement (j'ai pas le temps maintenant). Cela donne: En cliquant rapidement sur le bouton, avant qu'il ne disparaisse, le programme s'exécute. Pour un fichier bas, il faudra renseigner le chemin en ligne 8 de 'panoramic.exe'. Pour ajouter un dossier au raccourcis, il faut cliquer sur le dossier concerné, et ensuite sur le bouton "Ajout". Pour les fichiers, c'est identique. Il faut s'avoir que selon qu'on appuis sur un dossier ou un fichier, le chemin et le nom sont copier dans le presse papier, se qui permet l'intégration dans un source. Pour retirer un raccourcis, on le choisi dans le list à gauche, et ensuite on le supprime après un message de confirmation. Dans un edit en dessous des filtre, en cliquant dessus, on modifie l'affichage des fichiers. Ce dernier indique le nom du fichier, dans le cas où la place manquerait pour lire le nom. Ce programme a subit beaucoup de transformation depuis le départ, et la numérotation des objets est plutôt fantaisiste.
Dernière édition par Oscaribout le Jeu 28 Déc 2017 - 11:38, édité 8 fois (Raison : Manque un lien) | |
| | | Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: Explorateur particulier Lun 25 Déc 2017 - 1:15 | |
| Salut Oscaribout ! Je viens de charger et tester ton programme. J'ai d'abord sélectionné mon disk D puis j'ai choisi mon dossier IMAGES. Jusque là pas de problèmes. Ensuite j'ai choisi une image dans ma liste sauf que là le chemin n'est pas bon ! Voici le résultat : C'est pas très grave... Il suffit de vérifier la présence ou l'absence du "\" à la fin du chemin avant de rajouter le nom du fichier. | |
| | | Oscaribout
Nombre de messages : 471 Date d'inscription : 29/12/2016
| Sujet: Re: Explorateur particulier Lun 25 Déc 2017 - 9:27 | |
| Merci Minibug d'avoir testé.
J'ai modifié en direct dans le programme. A la ligne 258 dans le sous-programme disque f$= item_index$(14):dossier$=f$+chr$(92) : dir_change f$ : memoir$=f$ L'anti-slash a disparu, j'ai mis chr$(92) à la place.
J'ai repris le programme qui est posté pour voir si il y a d'autre problème de ce genre, mais j'ai le temps de voir pour l'instant. | |
| | | Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: Explorateur particulier Lun 25 Déc 2017 - 15:12 | |
| Bonjour Oscaribout J'ai testé de nouveau ton programme et le problème est le même... Je pense qu'il faut que tu vérifies ton chemin et tester si le dernier caractère est bien un '\' En faisant ceci par exemple : IF RIGHT$(chemin$,1)<>"\" THEN chemin$=chemin$+"\" ensuite on peut cliquer sur le fichier correspondant et là le chemin sera bon ! | |
| | | Oscaribout
Nombre de messages : 471 Date d'inscription : 29/12/2016
| Sujet: Re: Explorateur particulier Lun 25 Déc 2017 - 15:48 | |
| Avec le monde que j'ai, je ne peux que répondre rapidement. Je n'ai aucun problème sur mon programme quelque soit la sélection, ou la méthode. Ca ne me gène pas de rajouter la ligne, mais je pense surtout qu'il y a le même problème à un autre endroit. La barre a été surement bouffée ailleurs. Dès que je peux, je regarde, mais pour l'instant mon ordi sert dans la cuisine pour ma femme.
Mais le problème se résoudra. A+ | |
| | | Oscaribout
Nombre de messages : 471 Date d'inscription : 29/12/2016
| Sujet: Re: Explorateur particulier Lun 25 Déc 2017 - 17:37 | |
| Bon j'ai trouvé. Il y a bien une dizaine de ligne où l'anti-slash à disparu. D'ailleurs quelle utilité de mettre variable$ +""
J'ai remis la bonne version modifié sur le premier post.
J'espère ne pas en avoir oublié. | |
| | | Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: Explorateur particulier Lun 25 Déc 2017 - 19:17 | |
| Me revoilà ! Je viens de reprendre ton code et cette fois tout fonctionne ! - Citation :
- D'ailleurs quelle utilité de mettre variable$ +""
Oui c'est vrai que je n'y ai même pas prêté attention lorsque j'ai regardé ton code... Le coup des Slashs qui sont mangés lors de la mise en ligne sur le forum est bien connu, j'aurai du y penser ! Le mieux lorsqu'on publie sur le forum c'est d'utiliser le CHR$(92) au lieu de "\" comme tu l'avais fait remarquer dans le post juste avant. Juste un petit défaut de placement, lors de la création de mon premier raccourci :Edit : Je viens de voir que j'avais du créer sans m'en rendre compte des raccourcis vides et du coup j'ai tout supprimer et une fois le programme relancé tout fonctionne... Désolé ! | |
| | | Oscaribout
Nombre de messages : 471 Date d'inscription : 29/12/2016
| Sujet: Re: Explorateur particulier Lun 25 Déc 2017 - 19:37 | |
| Bien content que cela fonctionne maintenat. J'ai regardé mon code, mais franchement comment est-il possible de pouvoir ajouter des lignes vides? - Code:
-
a$ = dir_current$ b$ = caption$(23) if b$ <> "" if dir_exists(b$) = 1 item_add 24,upper$(file_extract_name$(b$)) item_add 25,"1)" + dir_current$+chr$(92) else item_add 24,lower$(file_extract_name$(b$)) item_add 25,"0)" + dir_current$+chr$(92) end_if file_save 25,instal$+chr$(92)+"explore_dos.fic" file_save 24,instal$+chr$(92)+"explore_name.fic" end_if Je ne vois pas comment éviter ce que tu présentes et comment c'est possible | |
| | | Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: Explorateur particulier Lun 25 Déc 2017 - 20:34 | |
| J'en ai aucune idée, Mais c'est peut être lié à l'utilisation du programme avant la correction. Ce qui à peut être engendré ce genre de chose ! | |
| | | Oscaribout
Nombre de messages : 471 Date d'inscription : 29/12/2016
| Sujet: Re: Explorateur particulier Mer 27 Déc 2017 - 19:12 | |
| Je viens de remettre le code renouvelé. J'ai revu le lancement de l'exécution d'un programme, ajouté un bouton pour supprimer un fichier dans un dossier, ajouté un check pour pouvoir agir sur les items de raccourcis, et pour supprimer une ligne.
| ---------- |
|
| |
| | | Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: Explorateur particulier Mer 27 Déc 2017 - 22:28 | |
| Bonsoir Oscaribout ! J'ai trouvé comment ajouter un raccourcis 'vide' ! Il suffit dès le départ de sélectionner le lecteur (C D etc...) et de cliquer sur 'ajouter' un raccourcis. ensuite tu choisis le dossier et le fichier de ton choix et tu 'ajoutes' de nouveau le fichier correspondant Tu verra immédiatement le résultat ! | |
| | | Oscaribout
Nombre de messages : 471 Date d'inscription : 29/12/2016
| Sujet: Re: Explorateur particulier Jeu 28 Déc 2017 - 0:34 | |
| J'avais fermé le programme comme quoi il était fini. Mais c'est logique. Dans le dlist 25 on a le dossier, et file_extract_name$ d'un disque, il reste rien pour le list 24. Je mets la modification à faire ici, je reprendrai plus tard dans le 1er post. Ce doit-être en ligne 377 environ. - Code:
-
ajout: a$ = dir_current$ b$ = caption$(23) if b$ <> "" if dir_exists(b$) = 1 if file_extract_name$(b$) <> "" item_add 24,upper$(file_extract_name$(b$)) item_add 25,"1)" + dir_current$+chr$(92) end_if else item_add 24,lower$(file_extract_name$(b$)) item_add 25,"0)" + dir_current$+chr$(92) end_if file_save 25,instal$+chr$(92)+"explore_dos.fic" file_save 24,instal$+chr$(92)+"explore_name.fic" end_if return Je vois que tu es le seul à tester, y trouves-tu un intérêt à ce programme? Je te remercie pour tes interventions, vu que j'ai horreur d'intervenir si ça ne présente pas d'intérêt pour le forum | |
| | | Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: Explorateur particulier Jeu 28 Déc 2017 - 0:59 | |
| - Citation :
- Je vois que tu es le seul à tester, y trouves-tu un intérêt à ce programme?
Je te remercie pour tes interventions, vu que j'ai horreur d'intervenir si ça ne présente pas d'intérêt pour le forum Je pense qu'il y a un intérêt mais peut être que c'est l'ergonomie qu'il faut travailler. Rendre l'ensemble plus simple et plus conviviale. En fait c'est interface qui ne me semble pas top ! Peut être cacher les raccourcis et ne les afficher que sur demande avec un bouton RACCOURCIS par exemple... Pareil pour la barre de recherche, tu peux faire en sort de la masquer et l'utilisateur l'affiche uniquement en cas de besoins. Après il y a sûrement d'autres petites choses à améliorer. il faut voir dans quel but utiliser cet outil... | |
| | | Oscaribout
Nombre de messages : 471 Date d'inscription : 29/12/2016
| Sujet: Re: Explorateur particulier Jeu 28 Déc 2017 - 1:24 | |
| Ce programme n'était pas fait pour être publié, mais je voulais m'y retrouver dans tous mes fichiers. Mais en le construisant j'ai fait pas mal de modifications. Je me suis rendu compte que j'étais très en retard, que j'avais plus d'un an à rattraper. Toutes les nouvelles fonctions dont certaines que je ne retrouvais pas.
Comme on m'a dit "Bien sûr que ça nous intéresse ! On n'est pas pressé, mais intéressé." j'ai pris la décision de poster le programme. Je me suis dit que il pouvait être le début d'une autre adaptation de votre part. Je sais que pour certain il faut faire un menu, alors que moi je m'en 'fou'. Une fois qu'on a l'exemple devant soi, on sait mieux ce dont on a besoin, et on a un canevas de départ. Ca ne me gênerait absolument pas qu'il soit repris, et que j'adapte un autre style (à condition que la sauvegarde des infos soit identique pour ne pas tout refaire).
Je ne trouve plus le temps de programmer. Ce que je faisais avant en une journée, je fais trainer, et les jours, sinon les semaines passent. Je ne peux plus passer le temps à programmer. Ca me donne une bonne raison de ne plus avoir ma place ici. C'est pas un problème de forum ou de membre, mais de moi avec mon environnement. | |
| | | Marc
Nombre de messages : 2466 Age : 63 Localisation : TOURS (37) Date d'inscription : 17/03/2014
| Sujet: Re: Explorateur particulier Jeu 28 Déc 2017 - 3:56 | |
| Bonjour à tous !
@Oscaribout Tu as bien fait de diffuser ton programme : au moment où j’écris, ton topic a dépassé les 200 vues ! Même si je ne suis pas intervenu, j’ai suivi le fil de la discussion et j’ai essayé ton programme. Et je pense qu’il y en a plein d’autres qui l’ont fait aussi… En tout cas merci de ton partage !
| |
| | | Oscaribout
Nombre de messages : 471 Date d'inscription : 29/12/2016
| Sujet: Re: Explorateur particulier Jeu 28 Déc 2017 - 11:48 | |
| Mise à jour avec les dernière modifications.
Je vous remercie pour vos remarques. Je comprend parfaitement ce qui est dit, et il est tout à fait normal qu'il n'y ait peut de réaction, surtout que moi-même je ne me manifeste plus. Et pour cause, j'essaye de me mettre en retrait.
Les remarques de Minibug sont parfaitement justifiées, mais je laisse ainsi le rendu du programme. A vous de le modifier à votre guise. J'ai mon outils, et j'ai des priorités. Maintenant mes besoins ne sont pas les vôtres.
Bonne journée!
| |
| | | Contenu sponsorisé
| Sujet: Re: Explorateur particulier | |
| |
| | | | Explorateur particulier | |
|
Sujets similaires | |
|
| Permission de ce forum: | Vous ne pouvez pas répondre aux sujets dans ce forum
| |
| |
| |