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 |
|
|
| KGF_dll - nouvelles versions | |
|
+13The Gamer Nardo26 silverman Minibug Pedro mindstorm pascal10000 Jicehel papydall Jean Claude JL35 Yannick Klaus 17 participants | |
Auteur | Message |
---|
Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Jeu 23 Oct 2014 - 14:36 | |
| Nouvelle version: KGF.dll V3.76 du 22/10/2014
Nouveauté: nouvelles fonctions: res% = dll_call2("GetObjectUnderPosition",x%,y%) res% = dll_call2("CursorHighlight",dx%,dy%)
Modules modifiés: KGF.dll
GetObjectUnderPosition retourne le handle de l'objet qui se trouve sous les coordonnées absolues (x%,y%) CursorHighlight surligne un rectangle de dimensions dx%, dy% à partir de la position actuelle du curseur.
Les sources sont à jour. La doc pour cette fonction est à jour (dans les fonctions de gestion de fenêtres). | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Ven 24 Oct 2014 - 2:56 | |
| Nouvelle version: KGF.dll V3.77 du 24/10/2014Nouveauté: nouvelle fonction: res% = dll_call1("PanoramicVersion",adr(version$))Modules modifiés: KGF.dllCette fonction est l'exacte réplique de la fonction KGFdllVersion, sauf qu'elle retourne la version de Panoramic. Les sources sont à jour. La doc pour cette fonction est à jour (dans les fonctions diverses). Le petit programme suivant permet de le vérifier: - Code:
-
dim s$, res%
dll_on "KGF.dll"
s$ = string$(255," ") res% = dll_call1("PanoramicVersion",adr(s$)) s$ = trim$(s$) message str$(res%)+": "+s$ end | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Sam 25 Oct 2014 - 0:34 | |
| Nouvelle version: KGF.dll V3.78 du 25/10/2014
Nouveautés: nouvelles fonctions: res% = dll_call2("MouseHighlight",xd%,yd%) res% = dll_call1("GetSelectedIEtext",adr(s$))
Modules modifiés: KGF.dll
La première fonction effectue un surlignage par une opération en 3 temps: - enfoncer le bouton gauche de la souris - glisser horizontalement et/ou verticalement - relâcher le bouton gauche de la souris La seconde fonction récupère dans une variable string le texte sélectionné spécifiquement dans une page Internet Explorer.
Les sources sont à jour. La doc pour cette fonction est à jour (dans les fonctions diverses). | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Sam 25 Oct 2014 - 22:32 | |
| Nouvelle version: KGF.dll V3.79 du 25/10/2014
Nouveautés: nouvelle fonction: res% = dll_call4("MouseFunction",cod%,fabs%,xd%,yd%)
Modules modifiés: KGF.dll
Cette fonction effectue toutes les fonctions disponibles pour la gestion de la souris: - mouvements - clics des 3 boutons - gestion de la molette Toutes les fonctions (sauf gestion de la molette) peuvent être effectuées en absolu ou en relatif (à partir de la position actuelle)
Les sources sont à jour. La doc pour cette fonction est à jour (dans les fonctions diverses). | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Dim 26 Oct 2014 - 11:44 | |
| Nouvelle version: KGF.dll V3.80 du 26/10/2014
Nouveautés: - Synedit: ajout gestion de la couleur du texte, - permettre noir pour toutes les couleurs
Modules modifiés: KGF.dll
Les sources sont à jour. La doc pour cette fonction est à jour (dans les fonctions diverses).
| |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Lun 27 Oct 2014 - 20:54 | |
| Nouvelle version: KGF.dll V3.81 du 27/10/2014
Nouveautés: nouvelle fonction GetSelectedText
Modules modifiés: KGF.dll
Les sources sont à jour. La doc pour cette fonction est à jour (dans les fonctions diverses).
Cette fonction est identique à GetSelectedIEtext, mais marche partout: Internet Explorer, Firefox, etc, ainsi que tous les programmes Windows en mode local.
| |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Mar 28 Oct 2014 - 18:01 | |
| Une question à cent sous... Peut on utiliser le handle renvoyé par handle_form(0) avec KillProcessByHandle. Dans l' aide de cette dernière, l' exemple traite d' un cas d' ouverture par LoadMinimize... Qui a deux possibilités de Code% correspondant à notepad et la calculatrice... A moins que GetProcessWindowHandle soit plus approprié... Ce que je cherche à faire, c' est fermer l' application en tuant le processus en cas d' erreur. De façon à éviter de se retrouver avec un processus qui traîne et créé d' autres erreurs si on essaye de relancer l' application. | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Mar 28 Oct 2014 - 22:06 | |
| Oui. C'est ce que je fais pour sortir proprement de Synedit_Editor, au lieu de faire TERMINATE. | |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Mar 28 Oct 2014 - 22:53 | |
| | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Jeu 30 Oct 2014 - 21:46 | |
| Nouvelle version: KGF.dll V3.82 du 29/10/2014
Nouveautés: versions finales des fonctions MouseHighlight et GetSelectedText
Modules modifiés: KGF.dll
Les sources sont à jour. La doc pour ces fonctions est à jour (dans les fonctions de gestion de la souris). | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Dim 2 Nov 2014 - 13:52 | |
| Nouvelle version: KGF.dll V3.83 du 02/11/2014
Nouveautés: modernisation des fonctions d'envoi de caractères
Modules modifiés: KGF.dll
Les sources sont à jour.
C'est une mise à jour interne, sans nouvelles fonctionnalités visibles de façon externe. Cependant, la mise à jour est techniquement importante puisqu'elle remplace des appels à des services système "dépréciés" par des appels à des services système plus récents, remplaçant les anciens selon MicroSoft. Ceci concerne les appels à Keybd_ebevt et Mouse_Event, qui sont remplacés par SendInput. | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Sam 8 Nov 2014 - 12:06 | |
| Nouvelle version: KGF.dll V3.8' du 08/11/2014
Nouveautés: nouvelles fonctions WBScrollBars et WB_ScrollBars
Modules modifiés: KGF.dll
Les sources sont à jour. La doc suivra.
Utilisation: res% = dll_call2("WBScrollBar",x%,y%) pour la version "WB unique" res% = dll_call3("WBScrollBar",WB%,x%,y%) pour la version "WB multiple"
X% et y% sont des indicateurs de présence des barres de défilement: 0 = absence 1=présence
IMPORTANT: cette fonction doit être utilisée APRES le chargement d'une URL !
EDIT
La doc est à jour !
| |
| | | papydall
Nombre de messages : 7017 Age : 74 Localisation : Moknine (Tunisie) Entre la chaise et le clavier Date d'inscription : 03/03/2012
| Sujet: Re: KGF_dll - nouvelles versions Sam 8 Nov 2014 - 12:48 | |
| Salut Klaus Je viens de tester - klaus a écrit:
- X% et y% sont des indicateurs de présence des barres de défilement:
0 = absence 1=présence Le fait d’utiliser - Code:
-
res%=dll_call2("WBScrollBars",0,0) : ' <======NOUVEAU: absence des 2 barres Elimine les barres de défilement quelque soit les valeurs données à x% et y% - Code:
-
res%=dll_call2("WBScrollBars",0-5,1000) : ' <======NOUVEAU: absence des 2 barres Fait la même chose. Pour rétablir les barres de défilement, il faut enlever cette ligne. Du boulot à toi | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Sam 8 Nov 2014 - 13:04 | |
| Code source de la fonction WBScrollBars: - Code:
-
function WBScrollBars(x,y: integer):integer; stdcall; export; begin try if x=0 then WB.OleObject.Document.Body.Style.OverflowX := 'hidden' else WB.OleObject.Document.Body.Style.OverflowX := 'visible'; if y=0 then WB.OleObject.Document.Body.Style.OverflowY := 'hidden' else WB.OleObject.Document.Body.Style.OverflowY := 'visible'; finally end; result := 0; end; Donc: - valeur 0 : pas de barre - valeur <> 0 : présence de barre Avec cette fonction, on peut dynamiquement afficher et cacher l'une ou l'autre des barres, ou les deux. | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Sam 8 Nov 2014 - 13:27 | |
| Pour que le fonctionnement soit plus logique, j'ai modifié l'interprétation des paramètres x% et y%, comme suit: - Citation :
- indicateur de présence de la barre de défilement horizontale
0 = barre absente. Ce qui dépasse est caché. 1 = (défaut) barre absente. Affichage centré sur la partie visible. 2 = barre toujours visible, nécessaire ou pas. 3 = barre affichée si le contenu dépasse
Et voici le code correspondant: - Code:
-
function WBScrollBars(x,y: integer):integer; stdcall; export; { valeurs pour x et y: 0 hidden No scroll bar. Content outside of visible area is hidden. 1 visible Default. No scroll bar. Display is clipped to visible area. 2 scroll Scroll bar always visible - whether required or not. 3 auto Content is clipped and scroll bar is displayed if required. } var xx, yy: integer; begin xx := x; if (xx<0) or (xx>3) then xx := 3; yy := y; if (yy<0) or (yy>3) then yy := 3; try case xx of 0: WB.OleObject.Document.Body.Style.OverflowX := 'hidden'; 1: WB.OleObject.Document.Body.Style.OverflowX := 'viible'; 2: WB.OleObject.Document.Body.Style.OverflowX := 'scroll'; 3: WB.OleObject.Document.Body.Style.OverflowX := 'auto'; end; case yy of 0: WB.OleObject.Document.Body.Style.OverflowY := 'hidden'; 1: WB.OleObject.Document.Body.Style.OverflowY := 'viible'; 2: WB.OleObject.Document.Body.Style.OverflowY := 'scroll'; 3: WB.OleObject.Document.Body.Style.OverflowY := 'auto'; end; finally end; result := 0; end;
Je pense que c'est plus clair comme ça. Evidemment, il faut recharger la DLL... | |
| | | papydall
Nombre de messages : 7017 Age : 74 Localisation : Moknine (Tunisie) Entre la chaise et le clavier Date d'inscription : 03/03/2012
| Sujet: Re: KGF_dll - nouvelles versions Sam 8 Nov 2014 - 13:50 | |
| Toutes les valeurs de x et y sont valables sauf pour la valeur 1 !!! EDIT Je pense avoir localisé l'erreur : - Code:
-
1: WB.OleObject.Document.Body.Style.OverflowX := 'viible'; C'est bien visible et non viible | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Sam 8 Nov 2014 - 14:38 | |
| Oups... Heureusement que tu es là, Papydall ! Elle m'avait échappée, celle-là.
Bon, c'est corrigé, avec mes excuses. | |
| | | papydall
Nombre de messages : 7017 Age : 74 Localisation : Moknine (Tunisie) Entre la chaise et le clavier Date d'inscription : 03/03/2012
| Sujet: Re: KGF_dll - nouvelles versions Sam 8 Nov 2014 - 16:18 | |
| Maintenant c’est parfait. Merci Klaus
| |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Dim 9 Nov 2014 - 12:43 | |
| Cela ne fonctionne pas chez moi. Mon programme génère une page html avec un cadre pour visualiser un fichier pdf. Le cadre a ses propres scroll bars lorsque c' est nécessaire. Je souhaitais donc éliminer celle du cadre html qui s' affiche par défaut en vertical. Mon Programme est placé à la racine d' une clé usb. - Code:
-
Application_title "Mes Documents" dim vs$ : vs$="0.6" ' déclaration et définition des variables d' adresse dim Path$,Kgf$,Ss_dos$ Path$=dir_current$ : if right$(Path$,1)="" : Path$=left$(Path$,len(Path$)-1):end_if Ss_dos$ =Path$+"\Sdos.ini" Kgf$ =Path$+"\KGF.dll" dll_on Kgf$ ' déclaration des variables objets dim no% dim MM%,SM%(10),SSM%(30) dim Frame1%,Pict1%,Sbar1%,Comb1%,List1% dim fen2%,E_FicImport%,B_FicImport%,Pict2%,Sbar2%,Comb2%,NName%,BImport%,BQuit% dim fen3%,E_FicMove%,Pict3%,Sbar3%,Comb3%,BMove% dim app% ' déclaration des variables projet dim hnd1%,res%,clic%,change%,Nb_dos%,Nb_Sdos%,ID$,File$ dim dos_imp$,Sdos_imp$,file_imp$ dim dos_move$,Sdos_move$,file_move$ hnd1%=handle(0)
' déclaration des labels Label Clic,Change,boum,CloseZero ' définition du form principal height 0,700 : width 0,1200 : top 0,(screen_y-height(0))/2 : left 0,(screen_x-width(0))/2 Caption 0,"Mes Documents vs "+vs$ : font_name 0,"arial" ' définition du menu no%=no%+1 : MM%=no% Main_menu no% no%=no%+1 : SM%(1)=no% Sub_menu no% : Parent no%,MM% : Caption no%,"Fichier" no%=no%+1 : SSM%(1)=no% Sub_menu no% : Parent no%,SM%(1) : Caption no%,"Importer" : on_click no%,clic no%=no%+1 : SSM%(2)=no% Sub_menu no% : Parent no%,SM%(1) : Caption no%,"Exporter" : on_click no%,clic no%=no%+1 : SSM%(3)=no% Sub_menu no% : Parent no%,SM%(1) : Caption no%,"-" no%=no%+1 : SSM%(4)=no% Sub_menu no% : Parent no%,SM%(1) : Caption no%,"Quitter" : on_click no%,clic no%=no%+1 : SM%(2)=no% Sub_menu no% : Parent no%,MM% : Caption no%,"Edition" no%=no%+1 : SSM%(5)=no% Sub_menu no% : Parent no%,SM%(2) : Caption no%,"Renommer" : on_click no%,clic no%=no%+1 : SSM%(6)=no% Sub_menu no% : Parent no%,SM%(2) : Caption no%,"Déplacer" : on_click no%,clic no%=no%+1 : SSM%(7)=no% Sub_menu no% : Parent no%,SM%(2) : Caption no%,"Supprimer" : on_click no%,clic no%=no%+1 : SM%(3)=no% Sub_menu no% : Parent no%,MM% : Caption no%,"Options" no%=no%+1 : SSM%(8)=no% Sub_menu no% : Parent no%,SM%(3) : Caption no%,"Ajouter un dossier" : on_click no%,clic no%=no%+1 : SSM%(9)=no% Sub_menu no% : Parent no%,SM%(3) : Caption no%,"Ajouter un sous dossier" : on_click no%,clic no%=no%+1 : SM%(4)=no% Sub_menu no% : Parent no%,MM% : Caption no%,"A Propos..." : on_click no%,clic no%=no%+1 : SM%(5)=no% Sub_menu no% : Parent no%,MM% : Caption no%,"Aide" : on_click no%,clic ' définition du frame de gauche no%=no%+1 : Frame1%=no% Panel no% : top no%,0 : left no%,0 : height no%,height(0)-58 : width no%,300 no%=no%+1 : Pict1%=no% Picture no% : parent no%,frame1% : top no%,5 : left no%,5 : height no%,200 : width no%,150 : color no%,0,0,0 no%=no%+1 : Sbar1%=no% Scroll_bar no% : parent no%,frame1% : top no%,210 : left no%,5 : width no%,150 : on_change no%,change : cursor_point no% no%=no%+1 Alpha no% : parent no%,frame1% : top no%,240 : left no%,5 : caption no%,"Sous dossier :" font_name no%,"Times new roman" : font_bold no% : font_size no%,10 no%=no%+1 : Comb1%=no% Combo no% : parent no%,frame1% : top no%,255 : left no%,5 : width no%,width(frame1%)-20 : on_click no%,clic : cursor_point no% no%=no%+1 : List1%=no% List no% : parent no%,frame1% : top no%,285 : left no%,5 : height no%,height(0)-350 : width no%,width(frame1%)-20 : on_click no%,clic : cursor_point no% ' définition du frame de droite res% = dll_call1("WBCreate",hnd1%) res% = dll_call4("WBLocate",305,5,width(0)-326,height(0)-68) Init() on_error_goto boum On_close 0,CloseZero end
' Menu des clics Clic: clic%=number_click if clic%=SSM%(1): FenImport() :end_if if clic%=SSM%(2): ExportFile(File$) :end_if if clic%=SSM%(4): if file_exists(Path$+"\temp.html")=1 : file_delete Path$+"\temp.html" : end_if : Terminate : end_if if clic%=SSM%(5): RenameFile(File$) :end_if if clic%=SSM%(6): Move_windows(File$):end_if if clic%=SSM%(7): DeleteFile(File$) :end_if if clic%=SSM%(8): NewDir() :end_if if clic%=SSM%(9): NewSubDir() :end_if if clic%=SM%(4) : APP() :end_if if clic%=SM%(5) ::end_if if clic%=Comb1% : define_ID() :end_if if clic%=List1% : define_File() :end_if
if clic%=B_FicImport%: Select_Import_file():end_if if clic%=Comb2% : define_Sdos_imp() :end_if if clic%=BImport% : ImportFile() :end_if if clic%=BQuit% : Close_imp() :end_if if clic%=Comb3% : define_Sdos_move() :end_if if clic%=BMove% : MoveFile(File$) :end_if return
' en cas d'horreur boum: Terminate return
' fermeture par la croix CloseZero: if file_exists(Path$+"\temp.html")=1 : file_delete Path$+"\temp.html" : end_if return
' Menu des changes Change: change%=number_change if change%=Sbar1% if Position(Sbar1%)>0 file_load Pict1%,Path$+""+Right$("0"+str$(position(sbar1%)),2)+".jpg" stretch_on Pict1% define_ID() else 2d_target_is Pict1% cls color Pict1%,0,0,0 end_if end_if if change%=Sbar2% if Position(Sbar2%)>0 file_load Pict2%,Path$+""+Right$("0"+str$(position(sbar2%)),2)+".jpg" stretch_on Pict2% dos_imp$="0"+str$(position(Sbar2%)) else 2d_target_is Pict2% cls color Pict2%,0,0,0 dos_imp$="00" end_if end_if if change%=Sbar3% if Position(Sbar3%)>0 file_load Pict3%,Path$+""+Right$("0"+str$(position(sbar3%)),2)+".jpg" stretch_on Pict3% dos_move$="0"+str$(position(Sbar3%)) else 2d_target_is Pict3% cls color Pict3%,0,0,0 dos_move$="00" end_if end_if if change%=NName% color NName%,255,255,255 font_color NName%,0,0,0 end_if return
' Initialisations ' détermination du nombre de dossiers ' Importation des sous dossiers Sub Init() dim_local d$,p$ d$=Path$+"" dir_change d$ p$=file_find_first$ if len(p$)>3 : if upper$(right$(p$,4))=".JPG" : Nb_dos%=Nb_dos%+1 : end_if : end_if p$=file_find_next$ if len(p$)>3 : if upper$(right$(p$,4))=".JPG" : Nb_dos%=Nb_dos%+1 : end_if : end_if while p$<>"_" if len(p$)>3 : if upper$(right$(p$,4))=".JPG" : Nb_dos%=Nb_dos%+1 : end_if : end_if p$=file_find_next$ end_while file_find_close Min Sbar1%,0 : Max Sbar1%,Nb_dos% : Position Sbar1%,0 if file_exists(Ss_dos$)=1 : file_load Comb1%,Ss_dos$ : Nb_Sdos%=count(Comb1%): end_if End_sub
' définition de l' identifiant Sub define_ID() dim_local dos$,Sdos$ dos$ = Right$("0"+str$(position(sbar1%)),2) if item_index(comb1%)>0 : Sdos$= Left$(text$(Comb1%),2):end_if ID$ = dos$+"_"+Sdos$+"_" if Position(Sbar1%)<>0 if item_index(Comb1%)<>0 Affich_file(ID$) end_if end_if End_sub
' Affichage des fichiers identifiés dans la liste Sub Affich_file(i$) dim_local d$,f$ d$=Path$+"" inactive List1% Clear List1% dir_change d$ f$=file_find_first$ f$=file_find_next$ if len(f$)>6 :if left$(f$,6)=i$ : item_add List1%, mid$(file_extract_name$(f$),7,len(file_extract_name$(f$))-10): end_if : end_if while f$<>"_" if len(f$)>6 :if left$(f$,6)=i$ : item_add List1%, mid$(file_extract_name$(f$),7,len(file_extract_name$(f$))-10): end_if : end_if f$=file_find_next$ end_while file_find_close if count(List1%)>0 : active List1% :end_if End_sub
' definition du fichier à visionner Sub define_File() File$=Path$+""+ID$+item_index$(List1%)+".pdf" Create_html(File$) End_sub
' Affichage du fichier Sub Create_html(f$) Dim_local html$,res2% html$=Path$+"\temp.html" no%=no%+1 file_open_write no%,Html$ file_writeln no%,"<!DOCTYPE HTML PUBLIC "+chr$(34)+"-//W3C//DTD HTML 4.01 Transitional/FR"+chr$(34)+">" file_writeln no%,"<html>" file_writeln no%,string$(9," ")+"<head>" file_writeln no%,string$(9," ")+"</head>" file_writeln no%,string$(9," ")+"<body>" file_writeln no%,string$(12," ")+"<div id="+chr$(34)+"doc"+chr$(34)+">" file_writeln no%,string$(12," ")+"<OBJECT data="+chr$(34)+f$+chr$(34)+" width=840 height=590 type=application/pdf></OBJECT>" file_writeln no%,string$(12," ")+"</div>" file_writeln no%,string$(9," ")+"</body>" file_writeln no%,"</html>" file_close no% no%=no%-1 res% = dll_call1("WBUrl",adr(html$)) res2% = dll_call2("WBScrollBars",0,0) End_sub
' Creation d' une page blanche Sub Create_blank_html() Dim_local html$,res2% html$=Path$+"\temp.html" no%=no%+1 file_open_write no%,Html$ file_writeln no%,"<!DOCTYPE HTML PUBLIC "+chr$(34)+"-//W3C//DTD HTML 4.01 Transitional/FR"+chr$(34)+">" file_writeln no%,"<html>" file_writeln no%,string$(9," ")+"<head>" file_writeln no%,string$(9," ")+"</head>" file_writeln no%,string$(9," ")+"<body>" file_writeln no%,string$(12," ")+"<div id="+chr$(34)+"doc"+chr$(34)+">" file_writeln no%,string$(12," ")+"</div>" file_writeln no%,string$(9," ")+"</body>" file_writeln no%,"</html>" file_close no% no%=no%-1 res% = dll_call1("WBUrl",adr(html$)) res2% = dll_call2("WBScrollBars",0,0) End_sub
' Fenetre d importation de fichiers dans le dossier Sub FenImport() dim_local hnd% if fen2%>0 Show fen2% else no%=no%+1 : fen2%=no% form no% :caption no%,"Import" :height no%,250 : width no%,450 :top no%,(screen_y-height(no%))/2 : left no%,(screen_x-width(no%))/2 font_name no%,"arial" :hnd%=handle(no%) command_target_is no% no%=no%+1 : Alpha no% : top no%,10 : left no%,10 : Caption no%,"Adresse du fichier :" no%=no%+1 : E_FicImport%=no% :Edit no% : top no%,25 : left no%,10 : width no%,width(fen2%)-70 no%=no%+1 : B_FicImport%=no% :Button no% : top no%,25 : left no%,width(fen2%)-55 : height no%,21 : width no%,35 : caption no%,".../..." : cursor_point no% : on_click no%,clic no%=no%+1 : Pict2%=no% :Picture no% : top no%,60 : left no%,10 : height no%,100 :width no%,75 : color no%,0,0,0 no%=no%+1 : Sbar2%=no% :Scroll_Bar no%: Top no%,165: Left no%,10 : Width no%,75 : On_Change no%,Change : cursor_point no% Min Sbar2%,0 : Max Sbar2%,Nb_dos% : Position Sbar2%,0 no%=no%+1 : Alpha no% : top no%,60 : left no%,95 : Caption no%,"Catégorie :" no%=no%+1 : Comb2%=no% : Combo no% : Top no%, 75: Left no%,95 : width no%,280 : on_click no%,clic : cursor_point no% no%=no%+1 : Alpha no% : top no%,105 : left no%,95 : Caption no%,"Nouveau nom :" no%=no%+1 : NName%=no% : Edit no% : Top no%, 120: Left no%,95 : width no%,280 : on_change no%,Change no%=no%+1 : BImport%=no% : Button no% : top no%,height(fen2%)-68 : left no%,width(fen2%)-185 : caption no%,"Importer" : cursor_point no%:on_click no%,clic no%=no%+1 : BQuit%=no% : Button no% : top no%,height(fen2%)-68 : left no%,width(fen2%)-100 : caption no%,"Quitter" : cursor_point no%:on_click no%,clic res% = DLL_call2("WindowTopMost",hnd%,0) end_if Clear Comb2% if file_exists(Ss_dos$)=1 : file_load comb2%,Ss_dos$ : end_if End_sub
' Selection du fichier à importer Sub Select_Import_file() dim_local a$ no%=no%+1 open_dialog no% dir_dialog no%,":" filter no%,"Fichiers pdf|*.pdf" a$=file_name$(no%) delete no% no%=no%-1 if a$<>"_" text E_FicImport%,a$ a$= file_extract_name$(a$) text NName%,mid$(a$,1,len(a$)-4) end_if End_sub
' définition du sous dossier d' importation Sub define_Sdos_imp() if item_index(Comb2%)>0 Sdos_imp$=left$(text$(Comb2%),2) else Sdos_imp$="00" end_if End_sub
' importation du fichier Sub ImportFile() Dim_local t$,b$ inactive BImport% if dos_imp$="" :dos_imp$="00" :end_if if Sdos_imp$="":Sdos_imp$="00":end_if t$=Path$+""+dos_imp$+"_"+Sdos_imp$+"_"+Text$(NName%) if right$(t$,4)<>".pdf" : t$=t$+".pdf" : end_if b$=text$(E_FicImport%) if dos_imp$<>"00" and Sdos_imp$<>"00" if file_exists(t$)=0 file_copy b$,t$ text E_FicImport%,"" text NName%,"" else if message_warning_yes_no("Un fichier du même nom est présent dans le dossier,"+chr$(13)+"Voulez vous le remplacer ?...")=1 file_delete t$ file_copy b$,t$ text E_FicImport%,"" text NName%,"" else color NNAme%,200,0,0 font_color NName%,255,255,255 end_if end_if else if dos_imp$="00" if message_warning_ok("Vous devez sélectionner un dossier")=1: end_if else if Sdos_imp$="00" if message_warning_ok("Vous devez sélectionner un sous dossier")=1: end_if end_if end_if end_if active BImport% if ID$=dos_imp$+"_"+Sdos_imp$+"_" : Affich_file(ID$):end_if End_sub
' fermeture de la fenetre d' importation Sub Close_imp() text E_FicImport%,"" text NName%,"" Position Sbar2%,0 hide fen2% End_sub
' exportation d' un fichier Sub ExportFile(exp_file$) dim_local export_name$ if exp_file$<>"" no%=no%+1 save_dialog no% dir_dialog no%,":" filter no%,"Fichier pdf|*.pdf" export_name$=file_name$(no%) delete no% no%=no%-1 if export_name$<>"_" if upper$(right$(export_name$,4))<>".PDF" export_name$=export_name$+".pdf" end_if file_copy exp_file$,export_name$ end_if else Messages(1) end_if End_sub
' renommer un fichier Sub RenameFile(Ren_file$) dim_local t$,pref$,suf$,newN$ if Ren_file$<>"" t$=file_extract_name$(Ren_file$) pref$=left$(t$,6) suf$=right$(t$,4) t$=mid$(t$,7,len(t$)-10) if message_input("Rename File","Nouveau nom : ",t$)=1 NewN$=Path$+""+pref$+message_text$+suf$ if file_exists(NewN$)=0 Create_blank_html() file_rename Ren_file$,NewN$ Affich_file(ID$) File$="" else Messages(2) end_if end_if else Messages(1) end_if End_sub
' Déplacer un fichier vers un autre dossier ou sous dossier ' fenetre de déplacement Sub Move_windows(Move_file$) dim_local t$,hnd% if Move_file$<>"" if fen3%>0 show fen3% else no%=no%+1 : fen3%=no% form no% :caption no%,"Move file" :height no%,250 : width no%,450 :top no%,(screen_y-height(no%))/2 : left no%,(screen_x-width(no%))/2 font_name no%,"arial" :hnd%=handle(no%) command_target_is no% no%=no%+1 : Alpha no% : top no%,10 : left no%,10 : Caption no%,"Nom du fichier :" no%=no%+1 : E_FicMove%=no% :Edit no% : top no%,25 : left no%,10 : width no%,width(fen3%)-70 no%=no%+1 : Pict3%=no% :Picture no% : top no%,60 : left no%,10 : height no%,100 :width no%,75 : color no%,0,0,0 no%=no%+1 : Sbar3%=no% :Scroll_Bar no%: Top no%,165: Left no%,10 : Width no%,75 : On_Change no%,Change : cursor_point no% Min Sbar3%,0 : Max Sbar3%,Nb_dos% : Position Sbar3%,0 no%=no%+1 : Comb3%=no% : Combo no% : Top no%, 75: Left no%,95 : width no%,280 : on_click no%,clic : cursor_point no% no%=no%+1 : BMove%=no% : Button no% : top no%,height(fen3%)-68 : left no%,width(fen3%)-100 : caption no%,"Déplacer" : cursor_point no%:on_click no%,clic end_if clear comb3% if file_exists(Ss_dos$)=1 : file_load comb3%,Ss_dos$ : end_if t$=file_extract_name$(Move_file$) t$=mid$(t$,7,len(t$)-10) text E_FicMove%,t$ text comb3%,item_read$(comb3%,val(mid$(ID$,4,2))) position Sbar3%,val(mid$(ID$,1,2)) dos_move$=mid$(ID$,1,2) Sdos_move$=mid$(ID$,4,2) res% = DLL_call2("WindowTopMost",hnd%,0) else Messages(1) End_if End_sub
' définition du sous dossier de destination Sub define_Sdos_move() if item_index(Comb2%)>0 Sdos_move$=left$(text$(Comb3%),2) else Sdos_move$="00" end_if End_sub
' Déplacement du fichier Sub MoveFile(Ex_file$) dim_local file_move$ inactive BMove% if dos_move$<>"00" and Sdos_move$<>"00" file_move$=Path$+""+dos_move$+"_"+Sdos_move$+"_"+text$(E_FicMove%)+".pdf" Create_blank_html() file_rename ex_file$,file_move$ Affich_file(ID$) file$="" else if dos_move$="00" Messages(3) else if Sdos_move$="00" Messages(4) end_if end_if end_if active BMove% End_sub
' Suppression d un fichier Sub DeleteFile(del_file$) If del_file$<>"" If Message_warning_yes_no("Êtes vous sûr de vouloir supprimer :"+chr$(13)+del_file$)=1 Create_blank_html() File_delete del_file$ Affich_file(ID$) File$="" end_if else messages(1) End_if End_sub
' Ajout d' un dossier Sub NewDir() dim_local img$,N_img$ no%=no%+1 Open_dialog no% dir_dialog no%,":" Filter no%,"Fichier image|*.jpg" img$=file_name$(no%) delete no% no%=no%-1 if img$<>"_" Nb_dos%=Nb_dos%+1 N_img$=Path$+""+right$("0"+str$(Nb_dos%),2)+".jpg" file_copy img$,N_img$ Min Sbar1%,0 : Max Sbar1%,Nb_dos% : Position Sbar1%,0 end_if End_sub
' Ajout d' un sous dossier Sub NewSubDir() dim_local Scat$ if message_input("Nouveau Ss dossier","Nom : ","")=1 Nb_Sdos%=Nb_Sdos%+1 Scat$=right$("0"+str$(Nb_Sdos%),2)+" - "+message_text$ no%=no%+1 if file_exists(Ss_dos$)=1 file_open_append no%,Ss_dos$ file_writeln no%,Scat$ file_close no% else file_open_write no%,Ss_dos$ file_writeln no%,Scat$ file_close no% end_if no%=no%-1 item_add Comb1%,Scat$ end_if End_sub
Sub APP() dim_local hnd_app% if app%>0 show app% else no%=no%+1 : app%=no% form no% :caption no%,"A Propos..." :height no%,170 : width no%,450 :top no%,(screen_y-height(no%))/2 : left no%,(screen_x-width(no%))/2 font_name no%,"Times new roman" :hnd_app%=handle(no%) command_target_is no% no%=no%+1 :Alpha no% : top no%,10 : left no%,10 : Caption no%, string$(30," ")+"Mes Documents" font_size no%,14 no%=no%+1 :Alpha no% : top no%,30 : left no%,10 : Caption no%, string$(55," ")+"Version : "+vs$ font_size no%,10 no%=no%+1 :Alpha no% : top no%,60 : left no%,10 : Caption no%, string$(50," ")+"Créé par Y.GERONIMI " font_size no%,10 no%=no%+1 :Alpha no% : top no%,80 : left no%,10 : Caption no%, string$(40," ")+"avec PANORAMIC Vs 0.9.26i2" font_size no%,10 no%=no%+1 :Alpha no% : top no%,100 : left no%,10 : Caption no%, string$(40," ")+"Utilise KGF.dll créée par Klaus" font_size no%,10 end_if res% = DLL_call2("WindowTopMost",hnd_app%,0) End_sub
Sub Messages(n%) dim_local mess$ select n% case 1 : mess$="Vous devez sélectionner un fichier !..." case 2 : mess$="Ce nom est déjà utilisé !..." case 3 : mess$="Voux devez choisir un dossier de destination !..." case 4 : mess$="Vous devez choisir un Sous dossier de destination !..." end_select message mess$ End_sub | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Dim 9 Nov 2014 - 13:07 | |
| Comment fait-on marcher ce programme ? En choisissant d'importer,, il me dit toujours de sélectionner un dossier, et je n'arrive pas à sélectionner un dossier... | |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: Re Dim 9 Nov 2014 - 13:48 | |
| Je crois qu' une petite aide s' impose... En fait, ce programme est la pour m' aider à classer toute ma "paperasse" sur une clé usb. Je scanne tous mes documents que je sauvegarde en pdf sur une clé usb. le dossier est en fait le nom d' une personne et il est représenté par une photo le sous dossier est une "activité" ou "prestataire" ex : dossier : Yannick, sous-dossier "CPAM" yannick est représenté par ma photo que je sélectionne dans le picture par la scroll bar CPAM est le sous-dossier que sélectionne dans le combo et dans le list, je sélectionne le doc que je veux visualiser dans mon cadre : - capture:
pour ajouter un dossier ou un sous-dossier, c' est dans "options" "importer" permet au programme de copier/coller/renommer un document vers la racine de la clé(ou dossier source) Attention!!! le fichier original importé est détruit. ( cela m' évite de faire le ménage dans le dossier "Mes Téléchargements" ) Je vais faire un fichier *.chm d' aide car si cela intéresse... | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Dim 9 Nov 2014 - 14:59 | |
| Désolé, je n'y arrive pas. "Ajouter un dossier" ne marche pas, parce que tu ouvres un sélecteur de fichiers. "Ajouter un sous-dossier" est accepté. "Importer" sort toujours la même erreur, malgré le choix d'un sous-dossier apparaissant dans la combo "catégorie".
Peux-tu faire une version réduite, montrant juste le problème que tu veux résoudre, sans la gestion complète de ton projet qui est inutile ici ? | |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Dim 9 Nov 2014 - 15:26 | |
| Sur la capture au dessus, on voit que la scroll bar de l' objet html est toujours là... ( pour importer un fichier, il faut qu' il y est un dossier et un sous dossier de sélectionner. ) Pour créer un dossier : Menu / options / ajouter un dossier Puis tu sélectionne avec l' aide de l' open_dialog une photo qui représentera ce dossier et tu valides la photo/image sera importée dans le dossier source de l' appli ( la première sera nommée 01.jpg ) Pour sélectionner le dossier, tu joues avec la scroll bar sous le picture. je vais mettre un zip sur mon webdav. ( je ne me doutais pas que j' avais créé une usine à gaz ) | |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Dim 9 Nov 2014 - 15:36 | |
| J' ai mis un zip sur mon webdav. Sous la croix rouge, la scroll_bar récalcitrante... | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Ven 14 Nov 2014 - 14:53 | |
| D'après ce que je vois, la scroll bar récalcitrante est celle de la form Panoramic, pas celle du browser. Peux-tu essayer de réduire les dimensions du browser ? | |
| | | Contenu sponsorisé
| Sujet: Re: KGF_dll - nouvelles versions | |
| |
| | | | KGF_dll - nouvelles versions | |
|
Sujets similaires | |
|
| Permission de ce forum: | Vous ne pouvez pas répondre aux sujets dans ce forum
| |
| |
| |