FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC

Développement d'applications avec le langage Panoramic
 
AccueilAccueil  RechercherRechercher  Dernières imagesDernières images  S'enregistrerS'enregistrer  MembresMembres  Connexion  
Derniers sujets
» Logiciel de planétarium.
KGF_dll - nouvelles versions - Page 8 Emptypar Pedro Aujourd'hui à 10:37

» Un autre pense-bête...
KGF_dll - nouvelles versions - Page 8 Emptypar Froggy One Jeu 21 Nov 2024 - 15:54

» Récupération du contenu d'une page html.
KGF_dll - nouvelles versions - Page 8 Emptypar Pedro Sam 16 Nov 2024 - 14:04

» Décompilation
KGF_dll - nouvelles versions - Page 8 Emptypar JL35 Mar 12 Nov 2024 - 19:57

» Un album photos comme du temps des grands-mères
KGF_dll - nouvelles versions - Page 8 Emptypar jjn4 Mar 12 Nov 2024 - 17:23

» traitement d'une feuille excel
KGF_dll - nouvelles versions - Page 8 Emptypar jjn4 Jeu 7 Nov 2024 - 3:52

» Aide-mémoire mensuel
KGF_dll - nouvelles versions - Page 8 Emptypar jjn4 Lun 4 Nov 2024 - 18:56

» Des incomprèhension avec Timer
KGF_dll - nouvelles versions - Page 8 Emptypar Klaus Mer 30 Oct 2024 - 18:26

» KGF_dll - nouvelles versions
KGF_dll - nouvelles versions - Page 8 Emptypar Klaus Mar 29 Oct 2024 - 17:58

» instructions panoramic
KGF_dll - nouvelles versions - Page 8 Emptypar maelilou Lun 28 Oct 2024 - 19:51

» Figures fractales
KGF_dll - nouvelles versions - Page 8 Emptypar Marc Ven 25 Oct 2024 - 12:18

» Panoramic et Scanette
KGF_dll - nouvelles versions - Page 8 Emptypar Yannick Mer 25 Sep 2024 - 22:16

» Editeur d étiquette avec QR évolutif
KGF_dll - nouvelles versions - Page 8 Emptypar JL35 Lun 23 Sep 2024 - 22:40

» BUG QR Code DelphiZXingQRCode
KGF_dll - nouvelles versions - Page 8 Emptypar Yannick Dim 22 Sep 2024 - 11:40

» fichier.exe
KGF_dll - nouvelles versions - Page 8 Emptypar leclode Ven 20 Sep 2024 - 19:02

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Novembre 2024
LunMarMerJeuVenSamDim
    123
45678910
11121314151617
18192021222324
252627282930 
CalendrierCalendrier
-17%
Le deal à ne pas rater :
(Black Friday) Apple watch Apple SE GPS + Cellular 44mm (plusieurs ...
249 € 299 €
Voir le deal

 

 KGF_dll - nouvelles versions

Aller en bas 
+8
JL35
Marc
papydall
Jicehel
Yannick
pascal10000
Minibug
Klaus
12 participants
Aller à la page : Précédent  1 ... 5 ... 7, 8, 9 ... 24 ... 40  Suivant
AuteurMessage
Klaus

Klaus


Nombre de messages : 12331
Age : 75
Localisation : Ile de France
Date d'inscription : 29/12/2009

KGF_dll - nouvelles versions - Page 8 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 8 EmptyVen 12 Fév 2016 - 11:12

KGF.dll V5.91 du 12/02/2016

Nouveautés:
- TreeView: navigation avec les touches du clavier

Modules modifiés:
KGF.dll
KGF.chm

La doc et les sources sont à jour.

Les touches suivantes son gérées:
Début (Home) = aller à la racine du noeud actuel
Flèche à gauche = aller au parent du noeud actuel
Flèche en haut = aller à la soeur rpécédente du noeud actuel
Flèche à droite= aller au premier enfant du noeud actuel
Flèche en bas= aller à la soeur suivante du noeud actuel

Evidemment, toutes ces actions sont signalées comme "évènement".
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Minibug

Minibug


Nombre de messages : 4570
Age : 58
Localisation : Vienne (86)
Date d'inscription : 09/02/2012

KGF_dll - nouvelles versions - Page 8 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 8 EmptyVen 12 Fév 2016 - 12:34

Bonjour Klaus

Concernant la barre d’icônes, je garde le fonctionnement que j'ai actuellement.
J'ai plus de souplesse dans l'usage et le positionnement. Merci d'avoir regarder. désolé.

Je suis en train de reprendre l'interface pour ajouter le TREE_VIEW mais comme je change et je simplifie pas mal de choses, je pense que l'intégration risque de prendre un certain temps. Mais le résultat devrait être a la hauteur.

Je te tiens au courant de mes avancés et des éventuels obstacles. Encore merci. Smile



Revenir en haut Aller en bas
http://gpp.panoramic.free.fr
Klaus

Klaus


Nombre de messages : 12331
Age : 75
Localisation : Ile de France
Date d'inscription : 29/12/2009

KGF_dll - nouvelles versions - Page 8 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 8 EmptyVen 12 Fév 2016 - 13:00

Pour ma part, je suis en train de voir le problème de compatibilité des fichiers entre les objets ImageList et et les fichiers *.illb...

EDIT

Résultat: il n'y a pas de différence entre un fichier *.ilb créé par l'outil IcoLibrary et les fichiers sauvegarde des objets ImageList.

En fait, IcoLibrary utilise un objet ImageList pour mémoriser les icônes. Et dans les deux cas, toutes les images dans le fichier doivent avoir les mêmes dimensions. Pour le fichier KGF.ilb (inclus dans KGF.dll pour les icônes par défaut), il s'agit d'icônes 16x16 pixels. Et mon programme test_ImageList.bas charge correctement KGF.ilb en reconnaissant la présence de 361 icônes, si l'on change la sub suivante (pour cause de filtrage du nom de fichier, seulement):
Code:
charger:
'  ******** filter 31,"Fichier *.dat|*.dat"
  f$ = file_name$(31)
  if f$="_" then return
'  ******** if lower$(right$(f$,4))<>".dat" then f$ = f$ + ".dat"
  if file_exists(f$)=0
    message "N'existe pas"
    return
  end_if
  res% = dll_call2("LoadImageList",IL%,adr(f$))
  message "Résultat: "+str$(res%)
  return

Donc, tu peux créer un fichier par test_imagelist.bas en y ajoutant les icônes, puis le reprendre par IcoLibrary et vice-versa - pas de problème.
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Yannick




Nombre de messages : 8635
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

KGF_dll - nouvelles versions - Page 8 Empty
MessageSujet: re   KGF_dll - nouvelles versions - Page 8 EmptyVen 12 Fév 2016 - 13:45

J' ai ré-activé tes messages, je les ai bien tous mais
voilà le visuel que j' ai avec ton code :
KGF_dll - nouvelles versions - Page 8 Captur17

scratch scratch scratch
Revenir en haut Aller en bas
Klaus

Klaus


Nombre de messages : 12331
Age : 75
Localisation : Ile de France
Date d'inscription : 29/12/2009

KGF_dll - nouvelles versions - Page 8 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 8 EmptyVen 12 Fév 2016 - 15:00

Et voici ce que j'ai:
KGF_dll - nouvelles versions - Page 8 Aa151

et après un clic sur le deuxième lien:
KGF_dll - nouvelles versions - Page 8 Aa218

Je ne vois pas où est le problème. Tu es sûr d'avoir la bonne version ?
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Yannick




Nombre de messages : 8635
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

KGF_dll - nouvelles versions - Page 8 Empty
MessageSujet: re   KGF_dll - nouvelles versions - Page 8 EmptyVen 12 Fév 2016 - 15:40

Je pense que oui, une mauvaise version me donnerai un message violent
de plantage lors des appels aux fonctions de la dll...

Je suis entrain de faire un grand nettoyage dur mon ordi, 
je suis revenu à une image disque du 07/02.

je vais voir mais cela reste une grande curiosité.

L' affichage était bon puis j' ai laissé en route Panoramic editor le temps de regarder un truc sur le web
et après plus rien. c' est vraiment louche cette histoire.
Revenir en haut Aller en bas
Yannick




Nombre de messages : 8635
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

KGF_dll - nouvelles versions - Page 8 Empty
MessageSujet: re   KGF_dll - nouvelles versions - Page 8 EmptyVen 12 Fév 2016 - 16:09

Bon. J' ai chargé la version de ce matin de KGF.dll.

Dans mon programme j' ai une variable "loc$"

dim Loc$ : Loc$ = left$(dir_current$,3)

Mon programme étant destiné à être sur une clé usb,
cette variable est sensé me donner la racine de la clé avec sa lettre d' attribution.

F:\

J' ai remis mon programme sur mon ordi en initialisant la dite variable de cette facon

dim Loc$ : Loc$ = dir_current$

le premier noeud affichant cette racine

txt$=loc$

Là ! ô miracle ! le treeview s' affiche correctement... mais zut ! loc$ n' est pas bon, il manque un "\" pour que le chemin vers
l' imagelist soit bon.
Qu' à celà ne tienne:

dim Loc$ : Loc$ = dir_current$+"\"

Mais là... Crying or Very sad Sad le treeview n' apparait plus scratch .

Moralité, mefiez vous des "\"... Laughing
Revenir en haut Aller en bas
Klaus

Klaus


Nombre de messages : 12331
Age : 75
Localisation : Ile de France
Date d'inscription : 29/12/2009

KGF_dll - nouvelles versions - Page 8 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 8 EmptyVen 12 Fév 2016 - 16:25

Bizarre. J'ai essayé avec
Code:
loc$ = dir_current$ + ""
et je n'ai aucun problème. En activant les lignes message "a" et message "b", tu ne vois pas le TreeView ?
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Yannick




Nombre de messages : 8635
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

KGF_dll - nouvelles versions - Page 8 Empty
MessageSujet: re   KGF_dll - nouvelles versions - Page 8 EmptyVen 12 Fév 2016 - 18:56

Je me demande si ma machine ne part pas en cacahuète...
J' ai d' autres programmes qui ne se lancent plus et je ne sais pas pourquoi.

Je remettre mon ordi en état usine cela risque d' être long avant de me relire
mais au moins je repartirai sur des bases saines.

Le coup du "\", celui là, c' est une première mais je ne m' étonne plus de rien.
avec : pas d' affichage de l' objet treeview
sans : affichage de l' objet treeview
J' ai les messages donc cela doit se faire mais je n' ai pas l' affichage.
Revenir en haut Aller en bas
Klaus

Klaus


Nombre de messages : 12331
Age : 75
Localisation : Ile de France
Date d'inscription : 29/12/2009

KGF_dll - nouvelles versions - Page 8 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 8 EmptySam 13 Fév 2016 - 1:40

KGF.dll V5.92 du 12/02/2016

Nouveautés:
- TreeView: nouvelle fonction LoadFolderTreeToTreeView

Modules modifiés:
KGF.dll
KGF.chm


La doc et les sources sont à jour.

Cette fonction charge un arbre de dossiers dans un objet TreeView, à partir d'un dossier de départ. Suivant l'importance de l'arborescence à analyser, cela peut prendre un certain temps, et donc le sablier s'affiche, lorsque le curseur est sur le TreeView.

Voici une petite démo:
Code:
' test_LoadFolderTreeToTreeView.bas
dim f$, res%, dir$, TV%, M1%, ind%, kgf$
kgf$ = "C:\Users\klausgunther\Documents\Mes projets\Mes projets Delphi\KGF\KGF.dll"
M1% = 0 - 1

dll_on kgf$

open_dialog 1
f$ = file_name$(1)
if f$="_" then terminate
dir$ = file_extract_path$(f$)

TV% =dll_call3("CreateTreeViewEx",handle(0),1,0)
res% = dll_call4("SetTreeViewOptions",TV%,0,1,0)
res% = dll_call5("ResizeTreeView",TV%,M1%,M1%,M1%,M1%)

' ind% = dll_call3("AddTreeViewRootNode",TV%,adr(dir$),1)
res% = dll_call2("LoadFolderTreeToTreeView",TV%,adr(dir$))

end


Chargez la variable dir$ avec le chemin que vous voulez, ou gardez le OPEN_DIALOG pour sélectionner un fichier quelconque - le programme en déduira le chemin et l'utilisera comme chemin de départ.
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Klaus

Klaus


Nombre de messages : 12331
Age : 75
Localisation : Ile de France
Date d'inscription : 29/12/2009

KGF_dll - nouvelles versions - Page 8 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 8 EmptySam 13 Fév 2016 - 12:14

KGF.dll V5.93 du 13/02/2016

Nouveautés:
- LoadFolderTreeToTreeView: utilisation automatique de l'ocône 218 si le TreeView a été créé avec IL%=-1
- CreateTreeView: utilisation de la librairie d'icônes internes si IL%=-1


Modules modifiés:
KGF.dll
KGF.chm


La doc et les sources sont à jour.

Cette modification permet l'affichage automatique d'une icône "dossier" dans le TreeView utilisé par LoadFolderTreeToTreeView. Voici la démo appropriée. Elle montre aussi comment récupérer le nom du dossier cliqué et le chemin total:
Code:
' test_LoadFolderTreeToTreeView.bas

label change

dim f$, res%, dir$, TV%, M1%, ind%, kgf$, img$, s$, p%, chemin$, dossier$
kgf$ = "C:\Users\klausgunther\Documents\Mes projets\Mes projets Delphi\KGF\KGF.dll"
M1% = 0 - 1

dll_on kgf$

open_dialog 1
edit 17 : hide 17 : on_change 17,change

f$ = file_name$(1)
if f$="_" then terminate
dir$ = file_extract_path$(f$)
img$ = "KGF.ilb"

TV% =dll_call3("CreateTreeViewEx",handle(0),1,M1%)
res% = dll_call4("SetTreeViewOptions",TV%,0,1,0)
res% = dll_call5("ResizeTreeView",TV%,M1%,M1%,M1%,M1%)

' ind% = dll_call3("AddTreeViewRootNode",TV%,adr(dir$),1)
res% = dll_call2("LoadFolderTreeToTreeView",TV%,adr(dir$))
res% = dll_call3("SetTreeViewEventReceiver",TV%,1,handle(17))

end

change:
  s$ = text$(17)
  if left$(s$,6)<>"click," then return
    s$ = mid$(s$,7,len(s$))
    p% = instr(s$,",")
    ind% = val(left$(s$,p%-1))
    s$ = mid$(s$,p%+1,len(s$))
    dossier$ = s$
    chemin$ = s$
    while ind%>=0
      s$ = string$(255," ")
      ind% = dll_call3("GetTreeViewInformation",TV%,3,adr(s$))
      if ind%>=0
        s$ = trim$(s$)
'        if right$(s$,1)="\" then s$ = left$(s$,len(s$)-1)
        chemin$ = s$ + "\" + chemin$
        res% = dll_call3("NavigateTreeView",TV%,3,0)
      end_if
    end_while
    message dossier$+"==>"+chemin$
  return

Voici le résultat:
KGF_dll - nouvelles versions - Page 8 Aa153
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Klaus

Klaus


Nombre de messages : 12331
Age : 75
Localisation : Ile de France
Date d'inscription : 29/12/2009

KGF_dll - nouvelles versions - Page 8 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 8 EmptySam 13 Fév 2016 - 14:35

KGF.dll V5.94 du 13/02/2016

Nouveautés:
- GetTreeViewInformation: ajout d'un code action 4

Modules modifiés:
KGF.dll
KGF.chm


La doc et les sources sont à jour.

Ce nouveau code permet de retourner le niveau du noeud sélectionné dans la valeur de retour, et le chemin complet du noeud depuis la racine, avec n "\" comme separateur.

En voici la démo:
Code:
' test_LoadFolderTreeToTreeView.bas

label change

dim f$, res%, dir$, TV%, M1%, ind%, kgf$, img$, s$, p%, chemin$, dossier$
kgf$ = "C:\Users\klausgunther\Documents\Mes projets\Mes projets Delphi\KGF\KGF.dll"
M1% = 0 - 1

dll_on kgf$

open_dialog 1
edit 17 : hide 17 : on_change 17,change

f$ = file_name$(1)
if f$="_" then terminate
dir$ = file_extract_path$(f$)
img$ = "KGF.ilb"

TV% =dll_call3("CreateTreeViewEx",handle(0),1,M1%)
res% = dll_call4("SetTreeViewOptions",TV%,0,1,0)
res% = dll_call5("ResizeTreeView",TV%,M1%,M1%,M1%,M1%)

' ind% = dll_call3("AddTreeViewRootNode",TV%,adr(dir$),1)
res% = dll_call2("LoadFolderTreeToTreeView",TV%,adr(dir$))
res% = dll_call3("SetTreeViewEventReceiver",TV%,1,handle(17))

end

change:
  s$ = text$(17)
  if left$(s$,6)<>"click," then return
    s$ = mid$(s$,7,len(s$))
    p% = instr(s$,",")
    ind% = val(left$(s$,p%-1))
    s$ = mid$(s$,p%+1,len(s$))
    dossier$ = s$

    chemin$ = string$(2000," ")
    ind% = dll_call3("GetTreeViewInformation",TV%,4,adr(chemin$))
    chemin$ = trim$(chemin$)
    message "niveau="+str$(ind%)+chr$(13)+chr$(10)+dossier$+"==>"+chemin$
  return


Et le résultat:
KGF_dll - nouvelles versions - Page 8 Aa154

Et ça marche aussi pour un disque complet (patience...). Voici un exemple pour mon WebDav, monté en disque réseau sur mon pc:
KGF_dll - nouvelles versions - Page 8 Aa155
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Yannick




Nombre de messages : 8635
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

KGF_dll - nouvelles versions - Page 8 Empty
MessageSujet: re   KGF_dll - nouvelles versions - Page 8 EmptySam 13 Fév 2016 - 19:57

Me revoilà, avec une machine "propre".
Je viens d' essayer le dernier exemple que tu as posté :

Cà Marche !!!!...

...ou plutôt, cela fonctionne. Laughing

( il ne me reste plus qu' à tester avec un programme de mon cru. Wink )
Revenir en haut Aller en bas
Klaus

Klaus


Nombre de messages : 12331
Age : 75
Localisation : Ile de France
Date d'inscription : 29/12/2009

KGF_dll - nouvelles versions - Page 8 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 8 EmptyDim 14 Fév 2016 - 9:50

KGF.dll V5.95 du 14/02/2016

Nouveautés:
- GetTreeViewInformation et SetTreeViewOption: ajout d'un code fonction 5

Modules modifiés:
KGF.dll
KGF.chm


La doc et les sources sont à jour.

L'objet TreeView sait maintenant gérer une donnée optionnelle de type chaîne de caractères, pour chaque noeud. Par défaut, cette chaine (nommée "données utilisateur" ou "user data') est vide.

La fonction SetViewOption avec le code fonction 5 effectue ceci:
act%=0 ==> effacer une éventuelle donnée utiliseur, pour le noeud sélectionné
act%=1 ==> mettre le texte donné par par%=adr(txt$) dans la donnée utilisateur du noeud sélectionné
act%=2 ==> retourner la longueur des données utilisateur du noeud sélectionné

La fonction GetTreeViewInformation code 5 effectue ceci:
si les données utilisateur ne sont pas vides, alors elles sont retournées dans la variable dont l'adresse est passée en par%

Voici le programme de démo. Un des noeuds a une donnée utilisateur. Trouvez-le en cliquant sur les noeuds...
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_call3("AddTreeViewRootNode",TV1%,adr(txt$),1)
txt$ = "Enfant 1"
child% = dll_call3("AddTreeViewChildNode",TV1%,adr(txt$),2)
txt$ = "Enfant 1a"
res% = dll_call3("AddTreeViewChildNode",TV1%,adr(txt$),3)
res% = dll_call3("SelectTreeViewNode",TV1%,ind%,0)
txt$ = "Enfant 2"
res% = dll_call3("AddTreeViewChildNode",TV1%,adr(txt$),4)
res% = dll_call3("SelectTreeViewNode",TV1%,child%,0)
txt$ = "Insertion devant enfant 1"
if res%<=child% then child% = child% + 1
res% = dll_call4("InsertTreeViewNode",TV1%,0,adr(txt$),5)
res% = dll_call3("SelectTreeViewNode",TV1%,child%,0)
txt$ = "Insertion après enfant 1"
res% = dll_call4("InsertTreeViewNode",TV1%,1,adr(txt$),4)
' 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)

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

Cette "donnée utilisateur" peut servir à mémoriser, pour certains ou tous les noeuds, des informations complémentaires, non affichées. C'est juste une chaîne de caractères, non limitée et de format libre.
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Klaus

Klaus


Nombre de messages : 12331
Age : 75
Localisation : Ile de France
Date d'inscription : 29/12/2009

KGF_dll - nouvelles versions - Page 8 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 8 EmptyDim 14 Fév 2016 - 14:21

KGF.dll V5.96 du 14/02/2016

Nouveautés:
- SetTreeVewOptions: ajout code opération 6

Modules modifiés:
KGF.dll
KGF.chm


La doc et les sources sont à jour.

Ce code permet de supprimer/changer/retourner l'indice de l'icône du noeud sélectionné:
opt 6:
act%=0 => supprimer l'icône du noeud sélectionné
act%=1 => remplacer l'icône du noeud sélectionné par l'icône numéro par%
act%=2 => retourner le numéro actuel de l'icône du noeud sélectionné

Voici le programme montrant une arborescence de dossiers. Un clic sur une ligne remplace l'icône de dossier fermé (219) par l'icône de dossier ouvert (196), et vice-versa:
Code:
' test_LoadFolderTreeToTreeView.bas

label change

dim f$, res%, dir$, TV%, M1%, ind%, kgf$, img$, s$, p%, chemin$, dossier$
kgf$ = "C:\Users\klausgunther\Documents\Mes projets\Mes projets Delphi\KGF\KGF.dll"
M1% = 0 - 1

dll_on kgf$

open_dialog 1
edit 17 : hide 17 : on_change 17,change

f$ = file_name$(1)
if f$="_" then terminate
dir$ = file_extract_path$(f$)
img$ = "KGF.ilb"

TV% =dll_call3("CreateTreeViewEx",handle(0),1,M1%)
res% = dll_call4("SetTreeViewOptions",TV%,0,1,0)
res% = dll_call5("ResizeTreeView",TV%,M1%,M1%,M1%,M1%)

' ind% = dll_call3("AddTreeViewRootNode",TV%,adr(dir$),1)
res% = dll_call2("LoadFolderTreeToTreeView",TV%,adr(dir$))
res% = dll_call3("SetTreeViewEventReceiver",TV%,1,handle(17))

end

change:
  s$ = text$(17)
  if left$(s$,6)<>"click," then return
    s$ = mid$(s$,7,len(s$))
    p% = instr(s$,",")
    ind% = val(left$(s$,p%-1))
    s$ = mid$(s$,p%+1,len(s$))
    dossier$ = s$

    chemin$ = string$(2000," ")
    ind% = dll_call3("GetTreeViewInformation",TV%,4,adr(chemin$))
    chemin$ = trim$(chemin$)
    message "niveau="+str$(ind%)+chr$(13)+chr$(10)+dossier$+"==>"+chemin$
    ind% = dll_call4("SetTreeViewOptions",TV%,2,6,0)
    if ind%=219
      ind% = dll_call4("SetTreeViewOptions",TV%,1,6,196)  : ' icône "dossier ouvert"
    else
      ind% = dll_call4("SetTreeViewOptions",TV%,1,6,219)  : ' icône "dossier fermé"
    end_if
  return
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Klaus

Klaus


Nombre de messages : 12331
Age : 75
Localisation : Ile de France
Date d'inscription : 29/12/2009

KGF_dll - nouvelles versions - Page 8 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 8 EmptyDim 14 Fév 2016 - 17:16

KGF.dll V5.97 du 14/02/2016

Nouveautés:
- ajout d'un paramètre imgsel% aux fonctions AddTreeViewRootNode, AddTreeViewChildNode et InsertTreeViewNode
- utilisation de l'icône 196 (dossier ouvert) dans LoadFolderTreeToTreeView pour un noeud sélectionné


Modules modifiés:
KGF.dll
KGF.chm

La doc et les sources sont à jour.

Vu l'intérêt de l'ajout d'une fonctionnalité importante, je me suis décidé à ajouter un paramètre à 3 fonctions déjà existantes - celles qui créent un noeud. Outre le paramètre img% qui donne l'indice de l'icône à ajouter, j'ai ajouté un paramètre imgsel% qui donne l'indice de l'icône si le noeud est sélectionné. Si l'on ne veut pas de changement d'icône, on passe tout simplement la même valeur pour img% et imgsel%.

Voici la démo avec le chargement d'une arborescence de dossiers:
Code:
' test_LoadFolderTreeToTreeView.bas

label change

dim f$, res%, dir$, TV%, M1%, ind%, kgf$, img$, s$, p%, chemin$, dossier$
kgf$ = "C:\Users\klausgunther\Documents\Mes projets\Mes projets Delphi\KGF\KGF.dll"
M1% = 0 - 1

dll_on kgf$

open_dialog 1
edit 17 : hide 17 : on_change 17,change

f$ = file_name$(1)
if f$="_" then terminate
dir$ = file_extract_path$(f$)
img$ = "KGF.ilb"

TV% =dll_call3("CreateTreeViewEx",handle(0),1,M1%)
res% = dll_call4("SetTreeViewOptions",TV%,0,1,0)
res% = dll_call5("ResizeTreeView",TV%,M1%,M1%,M1%,M1%)

res% = dll_call2("LoadFolderTreeToTreeView",TV%,adr(dir$))
res% = dll_call3("SetTreeViewEventReceiver",TV%,1,handle(17))

end

change:
  s$ = text$(17)
  if left$(s$,6)<>"click," then return
    s$ = mid$(s$,7,len(s$))
    p% = instr(s$,",")
    ind% = val(left$(s$,p%-1))
    s$ = mid$(s$,p%+1,len(s$))
    dossier$ = s$

    chemin$ = string$(2000," ")
    ind% = dll_call3("GetTreeViewInformation",TV%,4,adr(chemin$))
    chemin$ = trim$(chemin$)
    message "niveau="+str$(ind%)+chr$(13)+chr$(10)+dossier$+"==>"+chemin$
  return


et voici le résultat:
KGF_dll - nouvelles versions - Page 8 Aa156

et voici le résultat:
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Yannick




Nombre de messages : 8635
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

KGF_dll - nouvelles versions - Page 8 Empty
MessageSujet: re   KGF_dll - nouvelles versions - Page 8 EmptyDim 14 Fév 2016 - 17:56

cheers Encore un plus !

Je ne sais pas si tu as modifié la doc mais celle CreateTreeView est obsolète dans la version que j' ai.
5.94 du 13/06

Revenir en haut Aller en bas
Klaus

Klaus


Nombre de messages : 12331
Age : 75
Localisation : Ile de France
Date d'inscription : 29/12/2009

KGF_dll - nouvelles versions - Page 8 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 8 EmptyDim 14 Fév 2016 - 18:11

Tu as raison, Ygeronomi. D'ici une demi-heure, ce sera corrigé. Puis, mets à jour - on est à la version V5.97 de ce jour...

EDIT

C'est fait - la doc est corrigée.
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Yannick




Nombre de messages : 8635
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

KGF_dll - nouvelles versions - Page 8 Empty
MessageSujet: re   KGF_dll - nouvelles versions - Page 8 EmptyDim 14 Fév 2016 - 19:32

Je vais me mettre à jours.
Mais tu codes plus vite que ton ombre... Laughing

c' est fait. Wink
Revenir en haut Aller en bas
Minibug

Minibug


Nombre de messages : 4570
Age : 58
Localisation : Vienne (86)
Date d'inscription : 09/02/2012

KGF_dll - nouvelles versions - Page 8 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 8 EmptyDim 14 Fév 2016 - 19:46

Bonsoir Klaus !

Je souhaite utiliser res% = DLL_call0("KGFupdate"), mais je ne comprends pas bien son fonctionnement.

J'ai récupéré une version KGF du 12.02 alors que j'avais celle de 16h43 aujourd'hui !
Pourrais tu m'expliquer. Merci
Revenir en haut Aller en bas
http://gpp.panoramic.free.fr
Yannick




Nombre de messages : 8635
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

KGF_dll - nouvelles versions - Page 8 Empty
MessageSujet: re   KGF_dll - nouvelles versions - Page 8 EmptyDim 14 Fév 2016 - 19:56

Bon, avant tout, ne m' en veut pas de trop... Embarassed
mais je vais me la jouer chieur de service.

Dans tes exemple, pour les icônes, tu te sers de la librairie interne de kgf.
Dans cette librairie, le petit dossier fermé à le numéro 219.
Si on veut se servir d' une librairie personnalisée, il faudra que nôtre icône ait le même numéro.

J' ai voulu remplacé M1% par adr(imglist$) qui correspond à ma librairie ( basique que des couleurs)
et là surprise, je n' ai plus rien qui s' affiche ( cette erreur mériterait peut être un petit message ).

Comme je n' ai pas vu dans la fonction "LoadFolderTreeToTreeView" le choix du numéro d' image,
je suppose qu' il se fait automatiquement vers ce numéro.

Je ne sais pas si mon discours est très clair... scratch


Dernière édition par ygeronimi le Dim 14 Fév 2016 - 20:02, édité 1 fois (Raison : correction pour papydall)
Revenir en haut Aller en bas
Klaus

Klaus


Nombre de messages : 12331
Age : 75
Localisation : Ile de France
Date d'inscription : 29/12/2009

KGF_dll - nouvelles versions - Page 8 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 8 EmptyDim 14 Fév 2016 - 19:58

Tu as raison, Minibug ! Sur mes deux sites, je suis passé au fichier ZIP et non plus à la DLL directement. Et j'ai bêtement oublié d'adapter KGFupdate... vraiment désolé. Recharge par le lien dans la signature de mon post, et tu auras la dernière version. Je vais m'occuper de KGFupdate...
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Klaus

Klaus


Nombre de messages : 12331
Age : 75
Localisation : Ile de France
Date d'inscription : 29/12/2009

KGF_dll - nouvelles versions - Page 8 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 8 EmptyDim 14 Fév 2016 - 20:00

@Ygeronimi:
Si, ton discours est très clair. Effectivement, je n'avais pas prévu ça. Et donc, je vais le corriger...
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Klaus

Klaus


Nombre de messages : 12331
Age : 75
Localisation : Ile de France
Date d'inscription : 29/12/2009

KGF_dll - nouvelles versions - Page 8 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 8 EmptyLun 15 Fév 2016 - 12:25

KGF.dll V5.98 du 14/02/2016

Nouveautés:
- correction d'un bug dans KGFupdate

Modules modifiés:
KGF.dll

La doc est inchangée. Les sources sont à jour.

Ce problème étant réglé, je vais traiter maintenant celui de LoadFolderTreeToTreeView, avec une librairie d'images personnelle...


Dernière édition par Klaus le Lun 15 Fév 2016 - 14:13, édité 1 fois
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Klaus

Klaus


Nombre de messages : 12331
Age : 75
Localisation : Ile de France
Date d'inscription : 29/12/2009

KGF_dll - nouvelles versions - Page 8 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 8 EmptyLun 15 Fév 2016 - 14:13

KGF.dll V5.99 du 15/02/2016

Nouveautés:
- SetTreeViewOptions: nouveaux codes option 7 et 8
- LoadFolderTreeToTreeView: permettre l'utilisation d'une bibliothèque d'icônes externe


Modules modifiés:
KGF.dll
KGF.chm


La doc et les sources sont à jour.

Les codes 7 et 8 de SetTreeViewOptions permettent de changer les indices par défaut pour les icônes "dossier fermé" et "dossier ouvert", utilisés par LoadFolderTreeToTreeView.
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Contenu sponsorisé





KGF_dll - nouvelles versions - Page 8 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 8 Empty

Revenir en haut Aller en bas
 
KGF_dll - nouvelles versions
Revenir en haut 
Page 8 sur 40Aller à la page : Précédent  1 ... 5 ... 7, 8, 9 ... 24 ... 40  Suivant
 Sujets similaires
-
» Nouvelles versions
» KGF_dll - nouvelles versions
» Synedit_Editor - nouvelles versions
» KGF_dll - nouvelles versions
» KGF_dll - nouvelles versions

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC :: Activité des sites créés par les Panoramiciens. :: Le site de Klaus-
Sauter vers: