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 |
---|
Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Sam 2 Avr 2016 - 9:08 | |
| Ah, je vois enfin ce que tu veux dire... En effet, si je n'affiche "rien", je ne fais "rien", en ce moment... Je vais corriger cela. ca viendra en même temps que la justification et les attributs graphiques - c'est bien prévu dans le code, mais ça ne marche plus. Je travaille dessus. | |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Sam 2 Avr 2016 - 10:12 | |
| J' ai essayé tes explications pour cadrer une seule colonne à droite. Cela fonctionne. En fait je dois définir chaque colonne, presque colonne par colonne. Je vais mettre un zip sur mon webdav - Code:
-
res% = DLL_call6("GridFunction",SG%(i%),9,0,10,adr(pol$),0) res% = DLL_call6("GridFunction",SG%(i%),4,1,parnul%,RGBfondNorm%,RGBpoliceNorm%)
res% = DLL_call6("GridFunction",SG%(i%),9,1,10,adr(pol$),0) res% = DLL_call6("GridFunction",SG%(i%),4,2,parnul%,RGBfondDate%,RGBpoliceDate%) res% = DLL_call6("GridFunction",SG%(i%),9,0,10,adr(pol$),0) res% = DLL_call6("GridFunction",SG%(i%),4,3,parnul%,RGBfondNorm%,RGBpoliceNorm%) res% = DLL_call6("GridFunction",SG%(i%),4,4,parnul%,RGBfondNorm%,RGBpoliceNorm%) res% = DLL_call6("GridFunction",SG%(i%),4,5,parnul%,RGBfondNorm%,RGBpoliceNorm%)
res% = DLL_call6("GridFunction",SG%(i%),9,2,10,adr(pol$),0) res% = DLL_call6("GridFunction",SG%(i%),4,6,parnul%,RGBfondDeb%,RGBpoliceDeb%) res% = DLL_call6("GridFunction",SG%(i%),4,7,parnul%,RGBfondCred%,RGBpoliceCred%) res% = DLL_call6("GridFunction",SG%(i%),9,1,10,adr(pol$),0) res% = DLL_call6("GridFunction",SG%(i%),4,8,parnul%,RGBfondNorm%,RGBpoliceNorm%) res% = DLL_call6("GridFunction",SG%(i%),4,9,parnul%,RGBfondNorm%,RGBpoliceNorm%) donne : | |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Sam 2 Avr 2016 - 10:35 | |
| Cette manière de remettre mes 12 grid à 0 te parait elle juste : - Code:
-
' -> mise à O des grids for i%=1 to 12 ' suppression des lignes >3 for y%= 3 to NbR(i%) res% = DLL_call6("GridFunction",SG%(i%),21,3,0,0,0) next y% ' suppression du contenu des cellules de la ligne 2 txt$ = " " res% = DLL_call6("WriteGridCells",SG%(i%),1,2,9,2,adr(txt$)) ' initialisation du nombre de ligne du grid NbR%(i%)=2 ' initialisation des soldes du mois SoldeReel_mois(i%)=0 SoldeBank_mois(i%)=0 next i% | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Sam 2 Avr 2016 - 12:49 | |
| Oui, si tu veux supprimer dans chaque grille les lignes de 3 à la fin, effacer le contenu de la ligne 2 et garder la ligne 1. Ceci dit, il serait peut-etre plus simple de supprimer de la ligne 2 jusqu'à la fin, puis d'ajouter une nouvelle ligne à la fin ? | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Sam 2 Avr 2016 - 13:07 | |
| KGF.dll V6.26 du 02/04/2016Nouveautés: - GridFunction code 9: peut maintenant agir sur une seule cellule ou le tableau entier - WriteGridCell: une chaîne vide à écrire efface maintenant réellement la cellule du tableau - les attributs, polices et justifications sont prises en compte correctementModules modifiés: KGF.dll KGF.chmLa doc et les sources sources sont à jour. Dans le programme de démo ci-après, la cellule (9,5) est spécifiquement cadrée à droite et et en italique: - Code:
-
' test_GridFunction_code_12.bas
' Ce programme teste le code 12 de GridFunction. ' Ce code permet de définir des rectangles dans un GRID ' pour lesquels la sélection est interdite.
label clic
dim res%, l%, c%, RGB%, s$, x%, y%, status%, SG%, par1%, par2%, par3%, par4% dim stat$(3) stat$(0) = "Normal" stat$(1) = "Libre" stat$(2) = "Sélectionnable" stat$(3) = "Bloqué"
dll_on "KGF.dll"
width 0,690 : height 0,310
edit 98 : ' hide 98 top 98,300 : on_change 98,clic height 0,380
memo 99 : hide 99 item_add 99,"Width=660" item_add 99,"Height=260" item_add 99,"Rows=10" item_add 99,"Columns=10" item_add 99,"FixedRows=1" item_add 99,"FixedColumns=1" SG% = dll_call3("CreateStringGrid",handle(0),handle(99),handle(98))
for l%=1 to 10 for c%=1 to 10 s$ = str$(c%)+","+str$(l%) res% = dll_call4("WriteGridCell",SG%,c%,l%,adr(s$)) next c% next l% s$ = "ABCD" res% = dll_call4("WriteGridCell",SG%,9,4,adr(s$)) res% = dll_call6("GridFunction",SG%,9,9*65536+5,256+512+8192,0,0-1) res% = dll_call6("GridFunction",SG%,9,0,0,0,0)
width 0,920 memo 2 : width 2,200 : left 2,660+20 : ' width(1)+20 height 2,260 : ' height(1) font_name 2,"Courier" display
' première zone interdite totalement res% = dll_call6("GridFunction",SG%,12,3,2,5,3)
' seconde zone interdite en saisie uniquement res% = dll_call6("GridFunction",SG%,13,7,4,8,5)
' troisième zone CheckBox à gauche res% = dll_call6("GridFunction",SG%,15,4,6,4,9)
' quatrième zone CheckBox à droite res% = dll_call6("GridFunction",SG%,16,6,7,9,8)
' Cinquième zone CheckBox à gauche dans zone interdite res% = dll_call6("GridFunction",SG%,15,4,2,4,3)
' Sixième zone CheckBox à droite dans zone protégée res% = dll_call6("GridFunction",SG%,15,7,4,7,5)
' activer les couleurs personnalisées res% = dll_call6("GridFunction",SG%,8,1,0,0,0)
RGB(255,200,200) for l%=2 to 3 for c%=3 to 3 : ' 5 ' couleur de la première zone interdite res% = dll_call6("GridFunction",SG%,2,c%,l%,RGB%,0) next c% next l%
RGB(200,200,255) for l%=4 to 5 for c%=7 to 8 ' couleur de la seconde zone interdite res% = dll_call6("GridFunction",SG%,2,c%,l%,RGB%,0) next c% next l%
' chercher la map du grid s$ = string$(3000," ") res% = dll_call2("GetGridCellMap",SG%,adr(s$)) text 2,trim$(s$)
' autoriser la saisie res% = dll_call6("GridFunction",SG%,1,1,0,0,0)
end
sub RGB(R%,G%,B%) : ' produire une valeur RGB valide RGB% = (B%*256+R%)*256+G% end_sub
clic: ' caption 0,text$(98) : ' ici, on a déjà le numéro de ligne et de colonne dans Edit 98 ! res% = dll_call6("GridFunction",SG%,14,adr(x%),adr(y%),adr(status%),0) s$ = string$(255," ") res% = dll_call4("GetGridCellText",SG%,x%,y%,adr(s$)) caption 0, "click colonne "+str$(x%) +" ligne "+str$(y%)+" "+stat$(status%+1)+" = "+trim$(s$) s$ = string$(255," ") res% = dll_call3("GetGridRowText",SG%,y%,adr(s$)) message "Ligne="+trim$(s$) s$ = string$(255," ") res% = dll_call3("GetGridColumnText",SG%,x%,adr(s$)) message "Colonne="+trim$(s$) return Voici le résultat:
Dernière édition par Klaus le Sam 2 Avr 2016 - 17:15, édité 1 fois | |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Sam 2 Avr 2016 - 14:41 | |
| Là, tu m' as perdu. Le code 9: avant : 0 = gauche 1 = centré 2 = droite Maintenant, je ne sais plus comment faire ! | |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Sam 2 Avr 2016 - 14:51 | |
| Si ca y est, j' ai vu, mais tu compliques le schmilblick. Pour affecter à une colonne, il va me falloir mettre çà dans chaque ajout de ligne. | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Sam 2 Avr 2016 - 16:49 | |
| Ben non ! Tu l'affectes à l'objet entier (par1%=0) et tu utilises une des fonctions de paramétrage de colonnes. Puis tu établis d'autres paramétrages et tu configures un autre colonne, etc. La construction x*65536+y ne sert que si l'on veut spécifiquement toucher une cellule précise. | |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Dim 3 Avr 2016 - 18:04 | |
| Peut être manquerait il une fonction GridClear...non ?... | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Dim 3 Avr 2016 - 18:07 | |
| Certes. Ca viendra avec la prochaine mise à jour, avec d'autres fonctions: sauvegarde/restauration du StringGrid entier et/ou des données seulement. | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Lun 4 Avr 2016 - 0:46 | |
| KGF.dll V6.27 du 03/04/2016Nouveautés: - GridFunction nouveau code 23: effacement des données du tableau entier - nouveles fonctions: SaveGridToFile et LoadGridFromFile Modules modifiés: KGF.dll KGF.chm La doc et les sources sources sont à jour. Le programme de démo ci-après utilise toutes ces nouveautés: - chargement initial du StringGrid comme d'habitude - sauvegarde complète du StringGrid, structure et données - création d'une form avec un autre StringGrid, avec juste le minimum - restauration complète du fichier de sauvegarde, mais dans le second StringGrid - effacement des données du StringGrid d'origine - effacement des données du second StringGrid (la structure persiste !) - restauration des données uniquement dans le second stringGrid, utilisant la structure existante Voici le code: - Code:
-
' test_GridFunction_code_12.bas
' Ce programme teste le code 12 de GridFunction. ' Ce code permet de définir des rectangles dans un GRID ' pour lesquels la sélection est interdite.
label clic, linup
dim res%, l%, c%, RGB%, s$, x%, y%, status%, SG%, SG2% dim stat$(3) stat$(0) = "Normal" stat$(1) = "Libre" stat$(2) = "Sélectionnable" stat$(3) = "Bloqué"
dll_on "KGF.dll"
width 0,690 : height 0,310
edit 98 : ' hide 98 top 98,300 : on_change 98,clic height 0,380
memo 99 : hide 99 item_add 99,"Width=660" item_add 99,"Height=260" item_add 99,"Rows=10" item_add 99,"Columns=10" item_add 99,"FixedRows=1" item_add 99,"FixedColumns=1" SG% = dll_call3("CreateStringGrid",handle(0),handle(99),handle(98))
for l%=1 to 10 for c%=1 to 10 s$ = str$(c%)+","+str$(l%) res% = dll_call4("WriteGridCell",SG%,c%,l%,adr(s$)) next c% next l% s$ = "ABCD" res% = dll_call4("WriteGridCell",SG%,9,4,adr(s$)) res% = dll_call6("GridFunction",SG%,9,9*65536+5,256+512+8192,0,0-1) res% = dll_call6("GridFunction",SG%,9,0,0,0,0)
width 0,920 memo 2 : width 2,200 : left 2,660+20 : ' width(1)+20 height 2,260 : ' height(1) font_name 2,"Courier" display
button 3 : top 3,300 : left 3,200 : caption 3,"Ligne ^^^" : on_click 3,linup
' première zone interdite totalement res% = dll_call6("GridFunction",SG%,12,3,2,5,3)
' seconde zone interdite en saisie uniquement res% = dll_call6("GridFunction",SG%,13,7,4,8,5)
' troisième zone CheckBox à gauche res% = dll_call6("GridFunction",SG%,15,4,6,4,9)
' quatrième zone CheckBox à droite res% = dll_call6("GridFunction",SG%,16,6,7,9,8)
' Cinquième zone CheckBox à gauche dans zone interdite res% = dll_call6("GridFunction",SG%,15,4,2,4,3)
' Sixième zone CheckBox à droite dans zone protégée res% = dll_call6("GridFunction",SG%,15,7,4,7,5)
' activer les couleurs personnalisées res% = dll_call6("GridFunction",SG%,8,1,0,0,0)
RGB(255,200,200) for l%=2 to 3 for c%=3 to 3 : ' 5 ' couleur de la première zone interdite res% = dll_call6("GridFunction",SG%,2,c%,l%,RGB%,0) next c% next l%
RGB(200,200,255) for l%=4 to 5 for c%=7 to 8 ' couleur de la seconde zone interdite res% = dll_call6("GridFunction",SG%,2,c%,l%,RGB%,0) next c% next l%
' chercher la map du grid s$ = string$(3000," ") res% = dll_call2("GetGridCellMap",SG%,adr(s$)) text 2,trim$(s$)
' autoriser la saisie res% = dll_call6("GridFunction",SG%,1,1,0,0,0)
' sauvegarder l'objet s$ = "Sauvegarde_StringGrid.txt" res% = dll_call3("SaveGridToFile",SG%,0,adr(s$))
' créer une autre form avec un autre grid form 300 : width 300,690 : height 300,310 : caption 300,"Grille restaurée" top 300,200 : left 300,300 clear 99 item_add 99,"Width=100" item_add 99,"Height=100" item_add 99,"Rows=2" item_add 99,"Columns=2" item_add 99,"FixedRows=1" item_add 99,"FixedColumns=1" SG2% = dll_call3("CreateStringGrid",handle(300),handle(99),handle(98))
' restaurer l'objet dans un autre grid s$ = "Sauvegarde_StringGrid.txt" res% = dll_call3("LoadGridFromFile",SG2%,0,adr(s$))
' effacer le grid d'origine res% = dll_call6("GridFunction",SG%,23,0,0,0,0)
' effacer le grid copié res% = dll_call6("GridFunction",SG2%,23,0,0,0,0)
' charger juste les données dans le grid copié (la structure est restée intacte) s$ = "Sauvegarde_StringGrid.txt" res% = dll_call3("LoadGridFromFile",SG2%,1,adr(s$))
end
sub RGB(R%,G%,B%) : ' produire une valeur RGB valide RGB% = (B%*256+R%)*256+G% end_sub
clic: ' caption 0,text$(98) : ' ici, on a déjà le numéro de ligne et de colonne dans Edit 98 ! res% = dll_call6("GridFunction",SG%,14,adr(x%),adr(y%),adr(status%),0) s$ = string$(255," ") res% = dll_call4("GetGridCellText",SG%,x%,y%,adr(s$)) caption 0, "click colonne "+str$(x%) +" ligne "+str$(y%)+" "+stat$(status%+1)+" = "+trim$(s$) s$ = string$(255," ") res% = dll_call3("GetGridRowText",SG%,y%,adr(s$)) message "Ligne="+trim$(s$) s$ = string$(255," ") res% = dll_call3("GetGridColumnText",SG%,x%,adr(s$)) message "Colonne="+trim$(s$) return linup: if y%<=1 then return res% = dll_call6("GridFunction",SG%,24,0,0,0,0) y% = y% - 1 caption 0, "click colonne "+str$(x%) +" ligne "+str$(y%)+" "+stat$(status%+1) return | |
| | | Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: KGF_dll - nouvelles versions Lun 4 Avr 2016 - 7:34 | |
| Bonjour Klaus ! Comme je n'ai pas besoin du grid pour l'instant, je n'ai donc pas testé mais je le ferais le moment venu car toutes ces fonctions semblent très intéressantes comme d'habitude. J'aime bien le principe des CHECKs sur les cases, ça c'est très bien! J'ai peut être une idée d'utilisation dans GPP. a voir... | |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Lun 4 Avr 2016 - 17:08 | |
| Voilà des fonctions bien intéressantes qui vont sécuriser certaines de mes fonctions dans GestCompte.
Merci Klaus. | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Jeu 7 Avr 2016 - 0:41 | |
| KGF.dll V6.28 du 06/04/2016Nouveautés: - GridFunction nouveau code 24: retourner une chaîne de caractères avec la version du StringGrid et sa date - refonte totale de l'objet StringGrid, en intégrant tous les paramétrages dans des propriétés de l'objet (non visible depuis Panoramic, mais techniquement une transformation majeure) Modules modifiés: KGF.dll KGF.chmLa doc et les sources sources sont à jour. La version actuelle nécessite la suppression d'un objet StringGrid présent sur la form 0, si l'on quitte par la croix rouge. Cette suppression se fait par la fonction DeleteStringGrid dans une routine ON_CLOSE de la form 0. Le programme de démo ci-après montre tout cela (l'affichage de la version de l'objet et la fermeture propre du programme): - Code:
-
' test_GridFunction_code_12.bas
' Ce programme teste le code 12 de GridFunction. ' Ce code permet de définir des rectangles dans un GRID ' pour lesquels la sélection est interdite.
label clic, linup label close0 GridConstants() : ' définir des constantes pour le code fonction de GridFunction
dim res%, l%, c%, RGB%, s$, x%, y%, status%, SG%, SG2%, SGclic% dim stat$(3) stat$(0) = "Normal" stat$(1) = "Libre" stat$(2) = "Sélectionnable" stat$(3) = "Bloqué"
dll_on "KGF.dll"
width 0,690 : height 0,310 on_close 0,close0
edit 98 : ' hide 98 top 98,300 : on_change 98,clic height 0,380
memo 99 : hide 99 item_add 99,"Width=660" item_add 99,"Height=260" item_add 99,"Rows=10" item_add 99,"Columns=10" item_add 99,"FixedRows=1" item_add 99,"FixedColumns=1" SG% = dll_call3("CreateStringGrid",handle(0),handle(99),handle(98)) s$ = string$(255," ") res% = dll_call6("GridFunction",SG%,GF_GetVersion,adr(s$),0,0,0) caption 0,"Objet StringGrid "+trim$(s$)
for l%=1 to 10 for c%=1 to 10 s$ = str$(c%)+","+str$(l%) res% = dll_call4("WriteGridCell",SG%,c%,l%,adr(s$)) next c% next l% s$ = "ABCD" res% = dll_call4("WriteGridCell",SG%,9,4,adr(s$)) res% = dll_call6("GridFunction",SG%,GF_TextAttributes,9*65536+5,256+512+8192,0,0-1) res% = dll_call6("GridFunction",SG%,GF_TextAttributes,0,0,0,0)
width 0,920 memo 2 : width 2,200 : left 2,660+20 : ' width(1)+20 height 2,260 : ' height(1) font_name 2,"Courier" display
button 3 : top 3,300 : left 3,200 : caption 3,"Ligne ^^^" : on_click 3,linup
' première zone interdite totalement res% = dll_call6("GridFunction",SG%,GF_SetNonSelRect,3,2,5,3)
' seconde zone interdite en saisie uniquement res% = dll_call6("GridFunction",SG%,GF_SetNonModRect,7,4,8,5)
' troisième zone CheckBox à gauche res% = dll_call6("GridFunction",SG%,GF_SetLeftCB,4,6,4,9)
' quatrième zone CheckBox à droite res% = dll_call6("GridFunction",SG%,GF_SetRightCB,6,7,9,8)
' Cinquième zone CheckBox à gauche dans zone interdite res% = dll_call6("GridFunction",SG%,GF_SetLeftCB,4,2,4,3)
' Sixième zone CheckBox à droite dans zone protégée res% = dll_call6("GridFunction",SG%,GF_SetLeftCB,7,4,7,5)
' activer les couleurs personnalisées res% = dll_call6("GridFunction",SG%,GF_ActivateResetColor,1,0,0,0)
RGB(255,200,200) for l%=2 to 3 for c%=3 to 3 : ' 5 ' couleur de la première zone interdite res% = dll_call6("GridFunction",SG%,GF_CellColor,c%,l%,RGB%,0) next c% next l%
RGB(200,200,255) for l%=4 to 5 for c%=7 to 8 ' couleur de la seconde zone interdite res% = dll_call6("GridFunction",SG%,GF_CellColor,c%,l%,RGB%,0) next c% next l%
' chercher la map du grid s$ = string$(3000," ") res% = dll_call2("GetGridCellMap",SG%,adr(s$)) text 2,trim$(s$)
' autoriser la saisie res% = dll_call6("GridFunction",SG%,GF_Edit,1,0,0,0)
' sauvegarder l'objet s$ = "Sauvegarde_StringGrid.txt" res% = dll_call3("SaveGridToFile",SG%,0,adr(s$))
' créer une autre form avec un autre grid form 300 : width 300,690 : height 300,310 : caption 300,"Grille restaurée" top 300,200 : left 300,300 clear 99 item_add 99,"Width=100" item_add 99,"Height=100" item_add 99,"Rows=2" item_add 99,"Columns=2" item_add 99,"FixedRows=1" item_add 99,"FixedColumns=1" SG2% = dll_call3("CreateStringGrid",handle(300),handle(99),handle(98))
' restaurer l'objet dans un autre grid s$ = "Sauvegarde_StringGrid.txt" res% = dll_call3("LoadGridFromFile",SG2%,0,adr(s$))
' effacer le grid d'origine res% = dll_call6("GridFunction",SG%,GF_Clear,0,0,0,0)
' effacer le grid copié res% = dll_call6("GridFunction",SG2%,GF_Clear,0,0,0,0)
' charger juste les données dans le grid copié (la structure est restée intacte) s$ = "Sauvegarde_StringGrid.txt" res% = dll_call3("LoadGridFromFile",SG2%,1,adr(s$))
end
sub RGB(R%,G%,B%) : ' produire une valeur RGB valide RGB% = (B%*256+R%)*256+G% end_sub
close0: ' res% = dll_call1("DeleteStringGrid",SG2%) : ' <=== optionnel ! res% = dll_call1("DeleteStringGrid",SG%) : ' <=== indispensable ! return
clic: ' caption 0,text$(98) : ' ici, on a déjà le numéro de ligne et de colonne dans Edit 98 ! s$ = text$(98) s$ = mid$(s$,3,len(s$)) SGclic% = val(left$(s$,instr(s$,"click=")-1))
res% = dll_call6("GridFunction",SGclic%,GF_GetActiveCell,adr(x%),adr(y%),adr(status%),0) s$ = string$(255," ") res% = dll_call4("GetGridCellText",SGclic%,x%,y%,adr(s$)) caption 0, "click colonne "+str$(x%) +" ligne "+str$(y%)+" "+stat$(status%+1)+" = "+trim$(s$) s$ = string$(255," ") res% = dll_call3("GetGridRowText",SGclic%,y%,adr(s$)) message "Ligne="+trim$(s$) s$ = string$(255," ") res% = dll_call3("GetGridColumnText",SGclic%,x%,adr(s$)) message "Colonne="+trim$(s$) return linup: if y%<=1 then return res% = dll_call6("GridFunction",SG%,25,0,0,0,0) y% = y% - 1 caption 0, "click colonne "+str$(x%) +" ligne "+str$(y%)+" "+stat$(status%+1) return ' définition de constantes pour le code fonction de GridFunction sub GridConstants() if variable("GF_Edit")=1 then exit_sub dim GF_Edit : GF_Edit = 1 : ' saisie directe dans le GRID dim GF_CellColor : GF_CellColor = 2 : ' couleur d'une cellule dim GF_RowColor : GF_RowColor = 3 : ' couleur d'une ligne dim GF_ColColor : GF_ColColor = 4 : ' couleur d'une colonne dim GF_ActivateColor : GF_ActivateColor = 5 : ' activer les couleurs personnalisées dim GF_NormalRowColor : GF_NormalRowColor = 6 : ' couleur d'une ligne (sans parties fixes) dim GF_NormalColColor : GF_NormalColColor = 7 : ' couleur d'une colonne (sans parties fixes) dim GF_ActivateResetColor : GF_ActivateResetColor = 8 : ' activer les couleurs personnalisées (effacer liste existante) dim GF_TextAttributes : GF_TextAttributes = 9 : ' attributs du texte dim GF_ClearTextAttrib : GF_ClearTextAttrib = 10 : ' effacer tous les attributs pour le GRID dim GF_GetDimensions : GF_GetDimensions = 11 : ' retourner les dimensions du GRID dim GF_SetNonSelRect : GF_SetNonSelRect = 12 : ' définir un rectangle intouchable dim GF_SetNonModRect : GF_SetNonModRect = 13 : ' définir un rectangle non modifiable dim GF_GetActiveCell : GF_GetActiveCell = 14 : ' retourner les infos de la cellule active dim GF_SetLeftCB : GF_SetLeftCB = 15 : ' définir un rectangle de CheckBox gauches dim GF_SetRightCB : GF_SetRightCB = 16 : ' définir un rectangle de CheckBox droites dim GF_SetRowHeight : GF_SetRowHeight = 17 : ' définit la hauteur de lignes dim GF_SetColWidth : GF_SetColWidth = 18 : ' définir la largeur de colonnes dim GF_InsertRow : GF_InsertRow = 19 : ' insérer une ligne dim GF_InsertCol : GF_InsertCol = 20 : ' insérer une colonne dim GF_RemoveRow : GF_RemoveRow = 21 : ' supprimer une ligne dim GF_RemoveCol : GF_RemoveCol = 22 : ' supprimer une colonne dim GF_Clear : GF_Clear = 23 : ' effacer toutes les données dim GF_GetVersion : GF_GetVersion = 24 : ' retourner la version dans un string end_sub
EDITLe programme de démo contient maintenant une exemple d'une technique pour rendre le code plus lisible, en particulier au sujet de GridFuunction au a maintenant 24 codes action. On définit une "constante" pour chacun de ces codes, à l'aide d'une SUB qui est appelée en début de programme. Ce n'est évidemment qu'une suggestion. Chacun peut utiliser cela à son idée: codes fonctions numériques ou définition de "constantes" aux noms personnalisés. | |
| | | Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: KGF_dll - nouvelles versions Jeu 7 Avr 2016 - 12:44 | |
| Bonjour Klaus ! Concernant la fonction res% = dll_call5("SendSingleKey",hnd%,65,1,0,0)Est il possible de l'utilisé dans la fenêtre de Synedit ? En sachant que le CTRL-C fontionne parfaitement avec les 'vrais touches' du clavier. J'ai essayé la fonction res% = dll_call5("SendSingleKey",hnd%,65,1,0,0) mais sans résultat. Aurais je (encore...) loupé quelque chose ?? Merci pour ta réponse. EDIT : J'ai fais un petit programme de test rapide et ca fonctionne. - Code:
-
DIM a% , res%
LABEL menu
DLL_ON "C:\Users\ricoh\Documents\Panoramic\GPP\systeme\dll\KGF.dll"
MAIN_MENU 1 SUB_MENU 2 : CAPTION 2,"couper" : PARENT 2,1 : ON_CLICK 2,menu SUB_MENU 3 : CAPTION 3,"copier" : PARENT 3,1 : ON_CLICK 3,menu SUB_MENU 4 : CAPTION 4,"coller" : PARENT 4,1 : ON_CLICK 4,menu
EDIT 5 : PARENT 5,0 : FULL_SPACE 5
END
menu: a%=HANDLE(5) IF NUMBER_CLICK=2 THEN res% = dll_call5("SendSingleKey",a%,88,1,0,0) IF NUMBER_CLICK=3 THEN res% = dll_call5("SendSingleKey",a%,67,1,0,0) IF NUMBER_CLICK=4 THEN res% = dll_call5("SendSingleKey",a%,86,1,0,0) RETURN Est ce donc reellement un probleme avec Synedit ? | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Jeu 7 Avr 2016 - 15:42 | |
| Non, ce n'est pas un problème de Synedit. Regarde à quel objet tu envoies le caractère: c'est l'objet 5, donc l'objet EDIT caché qui est supposé recevoir les évènements déclenchés par le Synedit... Donc, il est normal que le Synedit ne réagisse pas.
Regarde SyneditFunction - un des codes action permet de récupérer le handle du Synedit. Et en utilisant la valeur retournée, ça devrait marcher. | |
| | | Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: KGF_dll - nouvelles versions Jeu 7 Avr 2016 - 16:23 | |
| Ok Klaus ! Je viens de comprendre... Là je n'ai pas trop de temps mais je regarde d'ici ce soir. Encore merci pour ton message | |
| | | Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: KGF_dll - nouvelles versions Jeu 7 Avr 2016 - 18:06 | |
| Ça y est j'ai compris Je suis en train d’implanter toutes les fonctions basiques sur le texte (COPIER-COLLER - RECHERCHER-REMPLACER...) En fait, j'avais complètement zappé le principe du handle dans la fonction correspondante. Merci pour ton aide Klaus. | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Jeu 7 Avr 2016 - 21:25 | |
| | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Jeu 7 Avr 2016 - 21:41 | |
| KGF.dll V6.29 du 07/04/2016Nouveautés: - DeleteStringGrid: si l'unique paramètre grid% est passé comme 0, alors on supprime tous les StringGrids existants - StringGrid en général: correction du problème de violation de mémoire sortie par la croix rougeModules modifiés: KGF.dll KGF.chmLa doc et les sources sources sont à jour. La petite modif de la fonction DeleteStringGrid est juste une opération "cosmétique" pour une plus grande facilité de programmation. Mais la correction de la violation de mémoire est une modification majeure. En effet, si un ou plusieurs StringGrid étaient placés sur la form 0 ou un objet de type container quelconque, sur la form 0, alors il fallait faire une routine ON_CLOSE pour la form 0 et supprimer tous ces StringGrid dans cette routine. Tout cela, bien que restant valide et possible, est maintenant obsolète. On peut maintenant terminer un programme dans n'importe quelle condition, par la croix rouge, et il n'y aura plus de problème. Cela porte l'objet StringGrid à la version V2 du 07/04/2016. Voici le programme de démo avec cette simplification: - Code:
-
' test_GridFunction_code_12.bas
' Ce programme teste le code 12 de GridFunction. ' Ce code permet de définir des rectangles dans un GRID ' pour lesquels la sélection est interdite.
label clic
GridConstants() : ' définir des constantes pour le code fonction de GridFunction
dim res%, l%, c%, RGB%, s$, x%, y%, status%, SG%, SG2%, SGclic% dim stat$(3) stat$(0) = "Normal" stat$(1) = "Libre" stat$(2) = "Sélectionnable" stat$(3) = "Bloqué"
dll_on "KGF.dll"
width 0,690 : height 0,310
edit 98 : ' hide 98 top 98,300 : on_change 98,clic height 0,380
memo 99 : hide 99 item_add 99,"Width=660" item_add 99,"Height=260" item_add 99,"Rows=10" item_add 99,"Columns=10" item_add 99,"FixedRows=1" item_add 99,"FixedColumns=1" SG% = dll_call3("CreateStringGrid",handle(0),handle(99),handle(98)) s$ = string$(255," ") res% = dll_call6("GridFunction",SG%,GF_GetVersion,adr(s$),0,0,0) caption 0,"Objet StringGrid "+trim$(s$)
for l%=1 to 10 for c%=1 to 10 s$ = str$(c%)+","+str$(l%) res% = dll_call4("WriteGridCell",SG%,c%,l%,adr(s$)) next c% next l% s$ = "ABCD" res% = dll_call4("WriteGridCell",SG%,9,4,adr(s$)) res% = dll_call6("GridFunction",SG%,GF_TextAttributes,9*65536+5,256+512+8192,0,0-1) res% = dll_call6("GridFunction",SG%,GF_TextAttributes,0,0,0,0)
width 0,920 memo 2 : width 2,200 : left 2,660+20 : ' width(1)+20 height 2,260 : ' height(1) font_name 2,"Courier" display
' première zone interdite totalement res% = dll_call6("GridFunction",SG%,GF_SetNonSelRect,3,2,5,3)
' seconde zone interdite en saisie uniquement res% = dll_call6("GridFunction",SG%,GF_SetNonModRect,7,4,8,5)
' troisième zone CheckBox à gauche res% = dll_call6("GridFunction",SG%,GF_SetLeftCB,4,6,4,9)
' quatrième zone CheckBox à droite res% = dll_call6("GridFunction",SG%,GF_SetRightCB,6,7,9,8)
' Cinquième zone CheckBox à gauche dans zone interdite res% = dll_call6("GridFunction",SG%,GF_SetLeftCB,4,2,4,3)
' Sixième zone CheckBox à droite dans zone protégée res% = dll_call6("GridFunction",SG%,GF_SetLeftCB,7,4,7,5)
' activer les couleurs personnalisées res% = dll_call6("GridFunction",SG%,GF_ActivateResetColor,1,0,0,0)
RGB(255,200,200) for l%=2 to 3 for c%=3 to 3 : ' 5 ' couleur de la première zone interdite res% = dll_call6("GridFunction",SG%,GF_CellColor,c%,l%,RGB%,0) next c% next l%
RGB(200,200,255) for l%=4 to 5 for c%=7 to 8 ' couleur de la seconde zone interdite res% = dll_call6("GridFunction",SG%,GF_CellColor,c%,l%,RGB%,0) next c% next l%
' chercher la map du grid s$ = string$(3000," ") res% = dll_call2("GetGridCellMap",SG%,adr(s$)) text 2,trim$(s$)
' autoriser la saisie res% = dll_call6("GridFunction",SG%,GF_Edit,1,0,0,0)
' sauvegarder l'objet s$ = "Sauvegarde_StringGrid.txt" res% = dll_call3("SaveGridToFile",SG%,0,adr(s$))
' créer une autre form avec un autre grid form 300 : width 300,690 : height 300,310 : caption 300,"Grille restaurée" top 300,200 : left 300,300 clear 99 item_add 99,"Width=100" item_add 99,"Height=100" item_add 99,"Rows=2" item_add 99,"Columns=2" item_add 99,"FixedRows=1" item_add 99,"FixedColumns=1" SG2% = dll_call3("CreateStringGrid",handle(300),handle(99),handle(98))
' restaurer l'objet dans un autre grid s$ = "Sauvegarde_StringGrid.txt" res% = dll_call3("LoadGridFromFile",SG2%,0,adr(s$))
' effacer le grid d'origine res% = dll_call6("GridFunction",SG%,GF_Clear,0,0,0,0)
' effacer le grid copié res% = dll_call6("GridFunction",SG2%,GF_Clear,0,0,0,0)
' charger juste les données dans le grid copié (la structure est restée intacte) s$ = "Sauvegarde_StringGrid.txt" res% = dll_call3("LoadGridFromFile",SG2%,1,adr(s$))
end
sub RGB(R%,G%,B%) : ' produire une valeur RGB valide RGB% = (B%*256+R%)*256+G% end_sub
clic: ' caption 0,text$(98) : ' ici, on a déjà le numéro de ligne et de colonne dans Edit 98 ! s$ = text$(98) s$ = mid$(s$,3,len(s$)) SGclic% = val(left$(s$,instr(s$,"click=")-1))
res% = dll_call6("GridFunction",SGclic%,GF_GetActiveCell,adr(x%),adr(y%),adr(status%),0) s$ = string$(255," ") res% = dll_call4("GetGridCellText",SGclic%,x%,y%,adr(s$)) caption 0, "click colonne "+str$(x%) +" ligne "+str$(y%)+" "+stat$(status%+1)+" = "+trim$(s$) s$ = string$(255," ") res% = dll_call3("GetGridRowText",SGclic%,y%,adr(s$)) message "Ligne="+trim$(s$) s$ = string$(255," ") res% = dll_call3("GetGridColumnText",SGclic%,x%,adr(s$)) message "Colonne="+trim$(s$) return ' définition de constantes pour le code fonction de GridFunction sub GridConstants() if variable("GF_Edit")=1 then exit_sub dim GF_Edit : GF_Edit = 1 : ' saisie directe dans le GRID dim GF_CellColor : GF_CellColor = 2 : ' couleur d'une cellule dim GF_RowColor : GF_RowColor = 3 : ' couleur d'une ligne dim GF_ColColor : GF_ColColor = 4 : ' couleur d'une colonne dim GF_ActivateColor : GF_ActivateColor = 5 : ' activer les couleurs personnalisées dim GF_NormalRowColor : GF_NormalRowColor = 6 : ' couleur d'une ligne (sans parties fixes) dim GF_NormalColColor : GF_NormalColColor = 7 : ' couleur d'une colonne (sans parties fixes) dim GF_ActivateResetColor : GF_ActivateResetColor = 8 : ' activer les couleurs personnalisées (effacer liste existante) dim GF_TextAttributes : GF_TextAttributes = 9 : ' attributs du texte dim GF_ClearTextAttrib : GF_ClearTextAttrib = 10 : ' effacer tous les attributs pour le GRID dim GF_GetDimensions : GF_GetDimensions = 11 : ' retourner les dimensions du GRID dim GF_SetNonSelRect : GF_SetNonSelRect = 12 : ' définir un rectangle intouchable dim GF_SetNonModRect : GF_SetNonModRect = 13 : ' définir un rectangle non modifiable dim GF_GetActiveCell : GF_GetActiveCell = 14 : ' retourner les infos de la cellule active dim GF_SetLeftCB : GF_SetLeftCB = 15 : ' définir un rectangle de CheckBox gauches dim GF_SetRightCB : GF_SetRightCB = 16 : ' définir un rectangle de CheckBox droites dim GF_SetRowHeight : GF_SetRowHeight = 17 : ' définit la hauteur de lignes dim GF_SetColWidth : GF_SetColWidth = 18 : ' définir la largeur de colonnes dim GF_InsertRow : GF_InsertRow = 19 : ' insérer une ligne dim GF_InsertCol : GF_InsertCol = 20 : ' insérer une colonne dim GF_RemoveRow : GF_RemoveRow = 21 : ' supprimer une ligne dim GF_RemoveCol : GF_RemoveCol = 22 : ' supprimer une colonne dim GF_Clear : GF_Clear = 23 : ' effacer toutes les données dim GF_GetVersion : GF_GetVersion = 24 : ' retourner la version dans un string 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 Sam 9 Avr 2016 - 17:00 | |
| KGF.dll V6.30 du 09/04/2016Nouveautés: - GridFunction: nouveau code 25: définir un rectangle de ProgressBarsModules modifiés: KGF.dll KGF.chmLa doc et les sources sources sont à jour. Ce nouveau code permet de définir un rectangle de cellules comme ProgressBars, de la même manière que pour les CheckBox. Le contenu des cellules concernées doit être une chaîne de caractères numérique, représentant une valeur entre 0 et 100. La chaîne vide ou une chaîne invalide sont traitées comme une valeur zéro. L'image de la cellule sera remplacée par une ProgressBar ainsi que l'affichage de la valeur du pourcentage. Dans le programme de démo qui suit, les cellules (6,10) et (7,10) sont définies comme un rectangle de ProgressBars, avec les valeurs 10 et 80, respectivement: - Code:
-
' test_GridFunction_code_12.bas
' Ce programme teste le code 12 de GridFunction. ' Ce code permet de définir des rectangles dans un GRID ' pour lesquels la sélection est interdite.
label clic
GridConstants() : ' définir des constantes pour le code fonction de GridFunction
dim res%, l%, c%, RGB%, s$, x%, y%, status%, SG%, SG2%, SGclic% dim stat$(3) stat$(0) = "Normal" stat$(1) = "Libre" stat$(2) = "Sélectionnable" stat$(3) = "Bloqué"
dll_on "KGF.dll"
width 0,690 : height 0,310
edit 98 : ' hide 98 top 98,300 : on_change 98,clic height 0,380
memo 99 : hide 99 item_add 99,"Width=660" item_add 99,"Height=260" item_add 99,"Rows=10" item_add 99,"Columns=10" item_add 99,"FixedRows=1" item_add 99,"FixedColumns=1" SG% = dll_call3("CreateStringGrid",handle(0),handle(99),handle(98)) s$ = string$(255," ") res% = dll_call6("GridFunction",SG%,GF_GetVersion,adr(s$),0,0,0) caption 0,"Objet StringGrid "+trim$(s$)
for l%=1 to 10 for c%=1 to 10 s$ = str$(c%)+","+str$(l%) res% = dll_call4("WriteGridCell",SG%,c%,l%,adr(s$)) next c% next l% s$ = "ABCD" res% = dll_call4("WriteGridCell",SG%,9,4,adr(s$)) res% = dll_call6("GridFunction",SG%,GF_TextAttributes,9*65536+5,256+512+8192,0,0-1) res% = dll_call6("GridFunction",SG%,GF_TextAttributes,0,0,0,0)
s$ = "10" res% = dll_call4("WriteGridCell",SG%,6,10,adr(s$)) s$ = "80" res% = dll_call4("WriteGridCell",SG%,7,10,adr(s$))
width 0,920 memo 2 : width 2,200 : left 2,660+20 : ' width(1)+20 height 2,260 : ' height(1) font_name 2,"Courier" display
' première zone interdite totalement res% = dll_call6("GridFunction",SG%,GF_SetNonSelRect,3,2,5,3)
' seconde zone interdite en saisie uniquement res% = dll_call6("GridFunction",SG%,GF_SetNonModRect,7,4,8,5)
' troisième zone CheckBox à gauche res% = dll_call6("GridFunction",SG%,GF_SetLeftCB,4,6,4,9)
' quatrième zone CheckBox à droite res% = dll_call6("GridFunction",SG%,GF_SetRightCB,6,7,9,8)
' Cinquième zone CheckBox à gauche dans zone interdite res% = dll_call6("GridFunction",SG%,GF_SetLeftCB,4,2,4,3)
' Sixième zone CheckBox à droite dans zone protégée res% = dll_call6("GridFunction",SG%,GF_SetLeftCB,7,4,7,5)
' Septième zone ProgressBar res% = dll_call6("GridFunction",SG%,GF_SetProgressBar,6,10,7,10)
' activer les couleurs personnalisées res% = dll_call6("GridFunction",SG%,GF_ActivateResetColor,1,0,0,0)
RGB(255,200,200) for l%=2 to 3 for c%=3 to 3 : ' 5 ' couleur de la première zone interdite res% = dll_call6("GridFunction",SG%,GF_CellColor,c%,l%,RGB%,0) next c% next l%
RGB(200,200,255) for l%=4 to 5 for c%=7 to 8 ' couleur de la seconde zone interdite res% = dll_call6("GridFunction",SG%,GF_CellColor,c%,l%,RGB%,0) next c% next l%
' chercher la map du grid s$ = string$(3000," ") res% = dll_call2("GetGridCellMap",SG%,adr(s$)) text 2,trim$(s$)
' autoriser la saisie res% = dll_call6("GridFunction",SG%,GF_Edit,1,0,0,0)
' sauvegarder l'objet s$ = "Sauvegarde_StringGrid.txt" res% = dll_call3("SaveGridToFile",SG%,0,adr(s$))
' créer une autre form avec un autre grid form 300 : width 300,690 : height 300,310 : caption 300,"Grille restaurée" top 300,200 : left 300,300 clear 99 item_add 99,"Width=100" item_add 99,"Height=100" item_add 99,"Rows=2" item_add 99,"Columns=2" item_add 99,"FixedRows=1" item_add 99,"FixedColumns=1" SG2% = dll_call3("CreateStringGrid",handle(300),handle(99),handle(98))
' restaurer l'objet dans un autre grid s$ = "Sauvegarde_StringGrid.txt" res% = dll_call3("LoadGridFromFile",SG2%,0,adr(s$))
' effacer le grid d'origine res% = dll_call6("GridFunction",SG%,GF_Clear,0,0,0,0)
' effacer le grid copié res% = dll_call6("GridFunction",SG2%,GF_Clear,0,0,0,0)
' charger juste les données dans le grid copié (la structure est restée intacte) s$ = "Sauvegarde_StringGrid.txt" res% = dll_call3("LoadGridFromFile",SG2%,1,adr(s$))
end
sub RGB(R%,G%,B%) : ' produire une valeur RGB valide RGB% = (B%*256+R%)*256+G% end_sub
clic: ' caption 0,text$(98) : ' ici, on a déjà le numéro de ligne et de colonne dans Edit 98 ! s$ = text$(98) s$ = mid$(s$,3,len(s$)) SGclic% = val(left$(s$,instr(s$,"click=")-1))
res% = dll_call6("GridFunction",SGclic%,GF_GetActiveCell,adr(x%),adr(y%),adr(status%),0) s$ = string$(255," ") res% = dll_call4("GetGridCellText",SGclic%,x%,y%,adr(s$)) caption 0, "click colonne "+str$(x%) +" ligne "+str$(y%)+" "+stat$(status%+1)+" = "+trim$(s$) s$ = string$(255," ") res% = dll_call3("GetGridRowText",SGclic%,y%,adr(s$)) message "Ligne="+trim$(s$) s$ = string$(255," ") res% = dll_call3("GetGridColumnText",SGclic%,x%,adr(s$)) message "Colonne="+trim$(s$) return ' définition de constantes pour le code fonction de GridFunction sub GridConstants() if variable("GF_Edit")=1 then exit_sub dim GF_Edit : GF_Edit = 1 : ' saisie directe dans le GRID dim GF_CellColor : GF_CellColor = 2 : ' couleur d'une cellule dim GF_RowColor : GF_RowColor = 3 : ' couleur d'une ligne dim GF_ColColor : GF_ColColor = 4 : ' couleur d'une colonne dim GF_ActivateColor : GF_ActivateColor = 5 : ' activer les couleurs personnalisées dim GF_NormalRowColor : GF_NormalRowColor = 6 : ' couleur d'une ligne (sans parties fixes) dim GF_NormalColColor : GF_NormalColColor = 7 : ' couleur d'une colonne (sans parties fixes) dim GF_ActivateResetColor : GF_ActivateResetColor = 8 : ' activer les couleurs personnalisées (effacer liste existante) dim GF_TextAttributes : GF_TextAttributes = 9 : ' attributs du texte dim GF_ClearTextAttrib : GF_ClearTextAttrib = 10 : ' effacer tous les attributs pour le GRID dim GF_GetDimensions : GF_GetDimensions = 11 : ' retourner les dimensions du GRID dim GF_SetNonSelRect : GF_SetNonSelRect = 12 : ' définir un rectangle intouchable dim GF_SetNonModRect : GF_SetNonModRect = 13 : ' définir un rectangle non modifiable dim GF_GetActiveCell : GF_GetActiveCell = 14 : ' retourner les infos de la cellule active dim GF_SetLeftCB : GF_SetLeftCB = 15 : ' définir un rectangle de CheckBox gauches dim GF_SetRightCB : GF_SetRightCB = 16 : ' définir un rectangle de CheckBox droites dim GF_SetRowHeight : GF_SetRowHeight = 17 : ' définit la hauteur de lignes dim GF_SetColWidth : GF_SetColWidth = 18 : ' définir la largeur de colonnes dim GF_InsertRow : GF_InsertRow = 19 : ' insérer une ligne dim GF_InsertCol : GF_InsertCol = 20 : ' insérer une colonne dim GF_RemoveRow : GF_RemoveRow = 21 : ' supprimer une ligne dim GF_RemoveCol : GF_RemoveCol = 22 : ' supprimer une colonne dim GF_Clear : GF_Clear = 23 : ' effacer toutes les données dim GF_GetVersion : GF_GetVersion = 24 : ' retourner la version dans un string dim GF_SetProgressBar : GF_SetProgressBar = 25 : ' définir un rectangle de ProgressBar end_sub
L'effet est assez sympa...
Dernière édition par Klaus le Dim 10 Avr 2016 - 12:13, édité 2 fois | |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Sam 9 Avr 2016 - 17:57 | |
| La doc *.chm du webdav est toujours celle du 07/04... | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Sam 9 Avr 2016 - 18:02 | |
| Merci, Ygeronimi. C'est corrigé. | |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Sam 9 Avr 2016 - 18:06 | |
| Si je clique sur une case 0% | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Sam 9 Avr 2016 - 18:18 | |
| | |
| | | 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
| |
| |
| |