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 | |
|
+8JL35 Marc papydall Jicehel Yannick pascal10000 Minibug Klaus 12 participants | |
Auteur | Message |
---|
Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Ven 26 Fév 2016 - 1:50 | |
| | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Ven 26 Fév 2016 - 2:37 | |
| KGF.dll V6.06 du 26/02/2016
Nouveautés: - GetTreeViewInformation: correction d'un bug
Modules modifiés: KGF.dll KGF.chm
La doc et les sources sont à jour.
Dans certaine conditions, la fonction retournait une chaîne de caractères contenant un caractère chr$(0). Ceci est corrigé.
Dernière édition par Klaus le Ven 26 Fév 2016 - 11:03, édité 1 fois | |
| | | Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: KGF_dll - nouvelles versions Ven 26 Fév 2016 - 9:30 | |
| Bonjour Klaus !
J'ai quelques soucis avec le DESIGNER.
Lorsque je sélectionne un objet, je dois faire un click suplémentaire (inutile ?!) pour pouvoir modifier la taille ou les positions. De plus les icônes (déplacement ou agrandissement) n'ont pas l'air d'être correctes.
Pourrais tu regarder, s'il te plais ? Merci.
EDIT : Après avoir retester, il n'y pas de click supplémentaire. C'est juste un problème dans les icones lors de la sélection d'un objet. | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Ven 26 Fév 2016 - 11:02 | |
| KGF.dll V6.07 du 26/02/2016Nouveautés: - Designer: correction d'un bug en sélectionnant un objetModules modifiés: KGF.dllLa doc est inchangée. Les sources sont à jour. Cela marche bien maintenant. Le programme affiche un cadre de sélection autour de l'objet -ou autour des objets - à traiter. Ce cadre a 4 poignées dans les coins. On peut tirer ces poignées pour redimensionner l'objet, ou on peut tirer un des bords pour le déplacer. Dans le cas de multi-sélection, l'ensemble agit uniquement sur le déplacement (on ne peut pas redimensionner simultanément plusieurs objets). Voici le programme de démo, à nouveau: - Code:
-
' pb_designer.bas
label click, fin, CT, desel, chg, change
dim res%, parent%, n%, s$, selmode%, p%, obj%, i%
full_space 0 : width 0,width(0) - 200 button 1 : width 1,100 : caption 1,"Container_tab" : on_click 1,CT button 2 : width 2,100 : caption 2,"Stop" : on_click 2,fin : left 2,100 combo 3 : width 3,150 : left 3,210 item_add 3,"Cadre intérieur" item_add 3,"Cadre extérieur" combo 4 : width 4,150 : left 4,370 : on_click 4,chg item_add 4,"Un objet seul" item_add 4,"Sélection d'objets"
' les 3 objets suivants pourront être déplacés et/ou redimensionnés memo 10 : top 10,40 : on_click 10,click alpha 11 : top 11,40 : left 11,200 : caption 11,"Libellé" : on_click 11,click button 12 : top 12,70 : left 12,200 : caption 12,"Test" : on_click 12,click
container 30 : top 30,150 : left 30,10 : caption 30,"Mon container" width 30,300 : height 30,200 : on_click 30,click list 31 : parent 31,30 : top 31,20 : left 31,10 : on_click 31,click item_add 31,"Cliquer ici"
container_tab 40 : top 40,40 : left 40,320 : width 40,400 : height 40,300 tab 41 : parent 41,40 : caption 41,"Premier onglet" tab 42 : parent 42,40 : caption 42,"Deuxième onglet" tab 43 : parent 43,40 : caption 43,"Troisième onglet"
alpha 44 : parent 44,41 : top 44,20 : left 44,20 : caption 44,"AAAA" : on_click 44,click alpha 45 : parent 45,42 : top 45,20 : left 45,20 : caption 45,"BBBB" : on_click 45,click alpha 46 : parent 46,43 : top 46,20 : left 46,20 : caption 46,"CCCC" : on_click 46,click
form 100 : left 100,width(0)+1 : height 100,height(0) : width 100,200 caption 100,"Objets sélectionnés" list 101 : parent 101,100 : full_space 101 : on_click 101,desel memo 102 : top 102,400 : left 102,20 : width 102,300 : height 102,100 bar_both 102 on_change 102,change : ' hide 102
dll_on "KGF.dll" res% = dll_call2("SelectComboBoxItem",handle(3),2) res% = dll_call2("SelectComboBoxItem",handle(4),1) selmode% = item_index(4)
end memo 177 : full_space 177 : bar_both 177 left 12,1234 top 12,2345 width 12,432 height 12,321 res% = dll_call3("DumpPanoramic",handle(177),object_internal(12),150)
end
change: for i%=1 to count(102) s$ = trim$(item_read$(102,i%)) if s$="" then return p% = instr(s$,",") obj% = val(left$(s$,p%-1)) s$ = mid$(s$,p%+1,100) p% = instr(s$,",") left obj%,val(left$(s$,p%-1)) s$ = mid$(s$,p%+1,100) p% = instr(s$,",") top obj%,val(left$(s$,p%-1)) s$ = mid$(s$,p%+1,100) p% = instr(s$,",") width obj%,val(left$(s$,p%-1)) s$ = mid$(s$,p%+1,100) height obj%,val(s$) next i% return
CT: obj% = 40 parent% = object_parent(40) select item_index(4) case 1: res% = dll_call5("RegisterObjectForDesigner",40,handle(parent%),handle(102),object_internal(40), item_index(3)-1) case 2: res% = dll_call6("DesignerFunction",1,40,handle(parent%),handle(102),object_internal(40), item_index(3)-1) end_select res% = dll_call6("DesignerFunction",3,40,handle(101),handle(102),0,0) return
click: ' res% = dll_call1("TestKGF",object_internal(number_click)) ' return
obj% = number_click parent% = object_parent(obj%) select item_index(4) case 1: res% = dll_call5("RegisterObjectForDesigner",obj%,handle(parent%),handle(102),object_internal(obj%),item_index(3)-1) case 2: res% = dll_call6("DesignerFunction",1,obj%,handle(parent%),handle(102),object_internal(obj%),item_index(3)-1) end_select res% = dll_call6("DesignerFunction",3,obj%,handle(101),handle(102),0,0) return
fin: select item_index(4) case 1: res% = dll_call0("UnregisterObjectFromDesigner") : ' libérer l'objet capturé case 2: res% = dll_call6("DesignerFunction",0,0,0,0,0,0) end_select res% = dll_call6("DesignerFunction",3,obj%,handle(101),handle(102),0,0) return
desel: s$ = item_read$(101,item_index(101)) n% = val(s$) res% = dll_call6("DesignerFunction",2,obj%,handle(parent%),handle(102),n%,0) res% = dll_call6("DesignerFunction",3,obj%,handle(101),handle(102),0,0) return
chg: select selmode% case 1: res% = dll_call0("UnregisterObjectFromDesigner") : ' libérer l'objet capturé case 2: res% = dll_call6("DesignerFunction",0,0,0,0,0,0) end_select res% = dll_call6("DesignerFunction",3,obj%,handle(101),handle(102),0,0) selmode% = item_index(4) return Au lancement, quelques objets s'affichent. Dans le combo en haut à droite, je choisie "Sélection d'objets": Je sélectionne 3 objets, en cliquant sur le premier, puis j'enfonce Control et je clique sur deux autres, puis je relâche Control: Je tire le coin en bas à droite d'un des objets sélectionnés (on est en multi-sélection, et donc c'est un déplacement): Je relâche la sélection en cliquant sur "Stop", puis je sélectionne un seul objet (bien qu'en étant en mode "Sélection d'objets" !) en cliquant dessus: Finalement, je tire le coin en bas à droite de cet objet, et il change de dimension: Tout a l'air de fonctionner. Un dernier mot: pour sélectionner le Container_tab, il faut utiliser le bouton "Container_tab". | |
| | | Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: KGF_dll - nouvelles versions Ven 26 Fév 2016 - 11:58 | |
| Merci Klaus ! Je recharge le DLL et je test. EDIT :Ton lien KGF.dll sur tes messages n'aboutis pas. On a droit a un message d'erreur.... | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Ven 26 Fév 2016 - 12:18 | |
| - Citation :
- Ton lien KGF.dll sur tes messages n'aboutis pas.
Merci de l'avoir signalé. C'est corrigé. | |
| | | Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: KGF_dll - nouvelles versions Ven 26 Fév 2016 - 13:39 | |
| Je viens de recharger KGF mais j'ai toujours des différences dans les icônes. J'ai utilisé le lien de rechargement sur ton message pour recharger la DLL.
Dès la première sélection, je n'ai pas d'icones, juste la fléche normal ! je dois faire un agrandissement ou un déplacement pour apercevoir les icones de sélection.
Ensuite les icones sont 'mélangés' : L'icone -déplacement- et les icones -sens d'agrandissement- ne correspondent plus ! c'est comme si il n'y avez plus de détection sur le cadre pour savoir qu'elle icône afficher !
Avant il y avait : - l’icône double fleche concernant le redimensionnement dans les 4 coins de la sélection du DESIGNER avec la double fléche dans sens de l'agrandissement. - l’icône avec la petite page qui concernait le déplacement dès que la souris passait sur la sélection du DESIGNER.
EDIT : Je viens de comprendre :
Avant dès que l'objet était sélectionné, les icones fléches ou page se positionnaient de manière automatique. Maintenant il faut procéder a un autre clic sur la sélection pour affiché l'icone correspondante. Ne peut on pas reprendre la sélection automatique lors du passage de la souris sur les différentes partie du designer
Dernière édition par Minibug le Ven 26 Fév 2016 - 13:45, édité 1 fois | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Ven 26 Fév 2016 - 13:44 | |
| Ah, je viens de comprendre ! Ce que tu appelles des "icônes", ce sont les images du curseur !
D'accord, il y a un décalage. Je suis en train de chercher cela. Mais cela n'empêche pas le bon fonctionnement ! C'est juste une indication visuelle qui n'est pas bonne ! | |
| | | Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: KGF_dll - nouvelles versions Ven 26 Fév 2016 - 13:48 | |
| Oui Klaus c'est çà !!! Désolé pour mon manque de clarté J'ai mis un edit dans mon message précédent. Merci | |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Ven 26 Fév 2016 - 15:42 | |
| Bravo Klaus,
GetTreeViewInformation fonctionne correctement.
Je ne sais pas si c' est techniquement possible mais une fonction serai pratique pour l' objet ImageList, c' est la fonction clear. Cette fonction en effaçant le contenu d' un objet ImageList éviterait dans certains cas de détruire (delete) l' objet et d' en recréer un autre pour l' avoir vide. | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Ven 26 Fév 2016 - 16:25 | |
| KGF.dll V6.08 du 26/02/2016
Nouveautés: - nouvelle fonction ClearImageList
Modules modifiés: KGF.dll KGF.dll
La doc et les sources sont à jour. | |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Ven 26 Fév 2016 - 16:35 | |
| Ca c'est du rapide ! Merci Klaus, là, je crois que la collection de fonction de l' ImageList est complète. | |
| | | Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: KGF_dll - nouvelles versions Sam 27 Fév 2016 - 11:59 | |
| Bonjour Klaus !
Un petit message juste pour te dire que l’intégration du DESIGNER dans GPP est terminée.
Je viens aussi de terminer la routine de sélection de l'objet. Elle peut être réalisée depuis l'objet bien sûr et aussi depuis le TREEVIEW. Je reste pour l'instant sur la sélection d'un objet unique. J'étudierais le multi plus tard.
Je vais maintenant commencer quelques test sur la gestion de TREEVIEW (sauvegarde et chargement) Je ne sais pas trop ou je vais avec ces options donc je vais voir ce que cela donne.
Je te tiens au courant de mes avancés. Merci. | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Sam 27 Fév 2016 - 12:03 | |
| | |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Sam 27 Fév 2016 - 13:26 | |
| Si, j' en ai trouvé une qui manque pour ImageList... res%=dll_call3("ResizeImageList",IL%,w%,h%) avec un retour res%=-1 si IL% contient des images Bon, je sais..., je sors... | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Sam 27 Fév 2016 - 13:34 | |
| Aïe... il faudrait alors, automatiquement, redimensionner toutes les images... | |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Sam 27 Fév 2016 - 16:06 | |
| Non Klaus, seulement que l' ImageList soit vide.
Actuellement si je veux faire un créateur d' ImageList, il me faut soit plusieurs ImageList (1 pour chaque dimension ) soit détruire et recréer l' ImageList.
Avec la nouvelle fonction, on peut le vider mais on ne peut que recharger des images de la même taille.
Si on veut créer une librairie de taille différente, on doit en créer un autre quand même. | |
| | | Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: KGF_dll - nouvelles versions Lun 29 Fév 2016 - 9:17 | |
| Bonjour klaus ! j'ai un soucis pour l'usage de res% = dll_call2("LoadTreeViewFromFile",TV%,adr(fic$))J'ai fais un SUB qui sauvegarde le TREEVIEW avec les 17 parametres de propriétés de chaque objet. Chaque paramètre est suivi de CHR$(13)+CHR$(10). sauf sur le dernier paramètre qui est inutile. Mais j'ai un message d'erreur lors du rechargement : 'NA' n'est pas une valeur entière correcte ! 'NA' est mon premier paramètre du premier objet. On dirait que ta DLL se perds entre les objets et les paramètres lors du chargement du fichier. Par contre si j'utilise juste un séparateur type '#' par exemple au lieu de CHR$(13)+CHR$(10), et bien là plus de problème. Cela fonctionne parfaitement ! Pourrais tu faire un test de ton coté et voir s'il y a moyen de contourner cette obstacle ? Merci d'avance. | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Lun 29 Fév 2016 - 11:04 | |
| C'est plutôt normal, Minibug. Il n'est pas prévu qu'une ligne d'un TreeView puisse contenir un CR LF. Cela doit être une chaîne de caractères normale. Sinon, la gestion complète risque d'être perturbée. Voici mon petit programme de démo, dans lequel j'ai ajouté une ligne de sauvegarde de l'objet: - Code:
-
' test_treeview.bas
label close0, TV1_event
dim res%, TV1%, txt$, ind%, child%, img$, ClickFlag%, s$, p%, noeud%, PM% dim OldCell$, NewCell$ dim M1% : m1% = 0 - 1
dll_on "KGF.dll"
on_close 0,close0
edit 17 : hide 17 : on_change 17,TV1_event
img$ = "C:\Users\klausgunther\Documents\Mes projets\Mes projets Delphi\KGF\TestImageList.dat" if message_confirmation_yes_no("Optimiser le double-clic ?")=1 TV1% = dll_call3("CreateTreeViewEx",handle(0),1,adr(img$)) else TV1% = dll_call3("CreateTreeView",handle(0),1,adr(img$)) end_if if message_confirmation_yes_no("Libelles éditables ?")=1 res% = dll_call4("SetTreeViewOptions",TV1%,1,1,0) else res% = dll_call4("SetTreeViewOptions",TV1%,0,1,0) end_if
' res% = dll_call5("ResizeTreeView",TV1%,40,10,400,300) res% = dll_call5("ResizeTreeView",TV1%,M1%,M1%,M1%,M1%)
txt$ = "Racine" ind% = dll_call4("AddTreeViewRootNode",TV1%,adr(txt$),1,1) txt$ = "Enfant 1" child% = dll_call4("AddTreeViewChildNode",TV1%,adr(txt$),2,1) txt$ = "Enfant 1a" res% = dll_call4("AddTreeViewChildNode",TV1%,adr(txt$),3,1) res% = dll_call3("SelectTreeViewNode",TV1%,ind%,0) txt$ = "Enfant 2" res% = dll_call4("AddTreeViewChildNode",TV1%,adr(txt$),4,1) res% = dll_call3("SelectTreeViewNode",TV1%,child%,0) txt$ = "Insertion devant enfant 1" if res%<=child% then child% = child% + 1 res% = dll_call5("InsertTreeViewNode",TV1%,0,adr(txt$),5,1)
res% = dll_call3("SelectTreeViewNode",TV1%,res%,0) res% = dll_call4("SetTreeViewOptions",TV1%,1,4,3) : ' texte de la ligne sélectionné en gras et italique
res% = dll_call3("SelectTreeViewNode",TV1%,child%,0) txt$ = "Insertion après enfant 1" res% = dll_call5("InsertTreeViewNode",TV1%,1,adr(txt$),4,1) ' res% = dll_call3("SelectTreeViewNode",TV1%,child%,0) ' res% = dll_call1("DeleteTreeViewNode",TV1%)
' res% = dll_call2("DeleteTreeView",TV1%,0)
res% = dll_call3("SetTreeViewEventReceiver",TV1%,1,handle(17))
width 0,width(0) + 300 memo 18 : left 18,610 : width 18,200 : height 18,400 : bar_both 18
message "On va changer la 5ème ligne..." newcell$ = "azerty" res% = dll_call4("ChangeTreeViewNodeText",TV1%,1,4,adr(NewCell$)) res% = dll_call3("SelectTreeViewNode",TV1%,4,0) s$ = "Ce noeud a été créé le "+date$+" à "+time$+" heures" res% = dll_call4("SetTreeViewOptions",TV1%,1,5,adr(s$)) item_add 18,"" res% = dll_call3("GetTreeViewInformation",TV1%,0,0) item_add 18,"Nombre total de noeud: "+str$(res%) res% = dll_call3("GetTreeViewInformation",TV1%,1,0) item_add 18,"Indice du noeud sélectionné: "+str$(res%) s$ = string$(255,"*") res% = dll_call3("GetTreeViewInformation",TV1%,2,adr(s$)) item_add 18,"texte du noeud sélectionné: "+trim$(s$) item_add 18,"" res% = dll_call4("SetTreeViewOptions",TV1%,1,2,255*256*256) : ' tout le texte en bleu res% = dll_call4("SetTreeViewOptions",TV1%,1,3,255) : ' texte de la ligne sélectionné en rouge res% = dll_call4("SetTreeViewOptions",TV1%,1,4,3) : ' texte de la ligne sélectionné en gras et italique res% = dll_call3("SelectTreeViewNode",TV1%,0,1)
s$ = "test_treeview.dat" res% = dll_call2("SaveTreeViewToFile",TV1%,adr(s$))
if 1=2 PM% = dll_call1("CreateTVPopupMenu",handle(17)) s$ = "popup ligne 1" res% = dll_call4("CreateTVPopupMenuItem",PM%,1,0,adr(s$)) s$ = "popup ligne 2" res% = dll_call4("CreateTVPopupMenuItem",PM%,1,0,adr(s$)) res% = dll_call4("SetTreeViewOptions",TV1%,1,9,PM%) : ' popup menu end_if
end
close0: res% = dll_call2("DeleteTreeView",TV1%,0) ' res% = dll_call1("DeleteTVPopupMenu",PM%) return TV1_event: s$ = text$(17) item_add 18,"TV1: "+s$ res% = dll_call4("SetTreeViewOptions",TV1%,2,5,0) if res%>0 s$ = string$(res%," ") res% = dll_call3("GetTreeViewInformation",TV1%,5,adr(s$)) s$ = trim$(s$) if len(s$)>0 then item_add 18," "+s$ end_if
if left$(s$,8)="editing," s$ = mid$(s$,9,len(s$)) p% = instr(s$,",") noeud% = val(left$(s$,p%-1)) OldCell$ = mid$(s$,p%+1,len(s$)) ' item_add 18,"Old "+str$(noeud%)+": "+OldCell$ return end_if if left$(s$,7)="edited," : ' exemple: on interdit la saisie d'un "$" s$ = mid$(s$,8,len(s$)) p% = instr(s$,",") noeud% = val(left$(s$,p%-1)) NewCell$ = mid$(s$,p%+1,len(s$)) p% = instr(NewCell$,"$") while p%>0 NewCell$ = mid$(NewCell$,1,p%-1)+mid$(NewCell$,p%+1,len(NewCell$)) p% = instr(NewCell$,"$") end_while res% = dll_call4("ChangeTreeViewNodeText",TV1%,2,0,adr(NewCell$)) item_add 18,"New "+str$(noeud%)+": "+NewCell$ return end_if return
Et voici le résultat: - Code:
-
16711680 0,0,0,0 Racine 1,50331648,4,0 Insertion devant enfant 1 1,0,1,0 Enfant 1 2,0,2,0 Enfant 1a 1,318767359,3,0 azerty Ce noeud a été créé le 29/02/2016 à 10:56:01 heures 1,0,3,0 Enfant 2 #END
Voilà ce que dit la doc au sujet de la sauvegarde: - Citation :
- Cette fonction sauvegarde le contenu d'un objet TreeView dans un fichier texte. Il peut être rechargé par la fonction LoadTreeViewFromFile. Les informations sauvegardées sont:
- couleur par défaut du texte du TreeView, dans la première ligne - liste des noeuds, à raison de 3 lignes par noeud: - niveau du noeud (0=racine) - couleur spécifique et attributs du texte, codés selon un masque binaire: CARRGGBB sous forme de 8 chiffres hexa-décimaux (32 bits) avec, en binaire C = 000c c=0: couleur par défaut c=1: couleur RGB A = gisb g=gras i=italique s=sousligné b=barré chaque position binaire à 1 active l'attribut concerné RRGGBB= valeur RGB de la couleur du libellé du noeud - indice de l'icône de base (-1=pas d'icône) - indice de l'icône sélectionnée (-1=pas d'icône) Donc, tu vois que la sauvegarde est un simple fichier de texte avec 3 lignes par ligne de TreeView, chaque ligne ayant sa fonction précise. Si le texte de ta ligne contient un CR LF, tu imagines aisément que cela perturbe complètement la structure du fichier de sauvegarde, et ce dès la première ligne. | |
| | | Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: KGF_dll - nouvelles versions Lun 29 Fév 2016 - 13:58 | |
| Ok, Merci Klaus
Je vais donc en revenir a mon idée de gestion par séparateur. Je voulais juste suivre tes conseils concernant le CR LF que tu m'avais donné un peu plus haut.
Maintenant que j'ai le fonctionnement en tête, je vais intégrer les sauvegardes et les chargement par TREEVIEW a la place de mon GRID qui il faut le reconnaitre est un peu lourd... | |
| | | Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: KGF_dll - nouvelles versions Dim 6 Mar 2016 - 18:30 | |
| Bonsoir Klaus !
Je viens de tomber sur ce topic : Petit défi avec un objet memo, ou il est question de faire des 'infos bulles'.
Il me semblait que tu avez développé des fonctions de ce genre dans KGF. Je ne retrouve rien sur le sujet ! Est ce moi qui ai rêvé ? | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Dim 6 Mar 2016 - 19:39 | |
| - Citation :
- Est ce moi qui ai rêvé ?
Ben... Oui... Je n'ai rien fait de ce genre. A moins que, vu mon âge, mes neurones deviennent défaillants... | |
| | | Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: KGF_dll - nouvelles versions Dim 6 Mar 2016 - 21:03 | |
| ok ok ! merci Klaus Encore perdu une occasion de me taire.. | |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Lun 7 Mar 2016 - 8:18 | |
| Par curiosité, j' ai essayé HINT sur un MEMO et cela fonctionne... | |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Jeu 10 Mar 2016 - 23:49 | |
| Une suggestion de commande pour le TreeView... Serait il possible que les noeuds de niveau 1 soit repliés à l' ouverture ?... Selon la taille de l' arborescence, cela pourrait être pratique. | |
| | | 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
| |
| |
| |