|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Futur Membre du Club
![]() Inscription : juillet 2006 Messages : 57 ![]() |
Bonjour à tous,
Le contexte : A partir d'un formulaire de type liste de clients, par un double-clic sur une ligne correspondant à un client j'accède à un formulaire de type page détaillant toutes les caractéristiques de ce client. Parmi ces caractéristiques, j'affiche sous forme d'un treeview l'arborescence des produits par catégories qu'il peut acheter. ce qui me permet de les sélectionner à loisir pour les lui rattacher. Dans le formulaire liste j'ai aussi un bouton qui me permet de créer un nouveau client par affichage du formulaire de type page de détail. J'ai aussi des boutons de navigation entre clients dans ce formulaire de type page de détail. Mon problème : - Lorsque je double-clic sur le premier client de la liste ou que je crée un nouveau client sa page de détail s'ouvre et affiche sans problème le treeview. - Par contre lorsque je double-clic sur un client qui n'est pas le premier de la liste, sa page de détail s'ouvre elle, sans problèmes et affiche les caractéristiques du client MAIS alors le treeview ne s'affiche pas ! - Si à l'aide de mes boutons de navigation je passe à un autre client le treeview s'affiche et si je reviens sur le client initial le treeview s'affiche correctement. C'est à ne rien y comprendre, et je tourne en rond aussi j'en appelle à votre aimable aide. Mes questions : 1 - Quelqu'un a-t-il une idée pour corriger ce problème d'affichage ? Y-a-t-il une (ou des) instruction(s) particulière(s) à rajouter ? 2 - Je ne vois pas comment détecter un clic sur une ligne du treeview pour déclencher une action de traitement (sur entrée et sur réception focus ne marchent que la première fois, un second clic ne déclenche plus ces évènements sauf à sortir du treeview et y revenir ce qui n'est pas top !). MERCI d'avance de vos réponses avisées. Cordialement oracle7556 |
|
|
00
|
|
|
#2 |
|
Membre éclairé
![]() Christophe AUMOITTEInscription : octobre 2009 Messages : 254 ![]() |
Bonsoir,
Je pense que tu as un problème d'actualisation des données dans ton formulaire qui contient le Treeview. Le code pour le click dans un Treeview est : Code :
Sub TV1_NodeClick(ByVal node As Object) Supposant que ton Treeview s'appelle TV1. Cordialement Christophe |
|
|
00
|
|
|
#3 | |
|
Futur Membre du Club
![]() Inscription : juillet 2006 Messages : 57 ![]() |
Bonsoir,
@ marsouin_89 Merci de votre réponse. En fouillant l'explorateur d'objets (F2) sur Treeview j'ai bien vu cet évènement 'TV1_NodeClick(...)' mais je ne comprend pas trop comment l'utiliser. Pouvez-vous préciser SVP ? Car à priori il faut lui passer la référence d'un nœud précis et comment connaitre ce nœud suite au clic sur une ligne ? est-ce bien avec TV1.Nodes(KeyLigneSelect).Selected ? Donc qq chose du style : Code :
TV1_NodesClick(TV1.Nodes(KeyLigneSelect).Selected) De plus il prend le pas sur l'autre évènement 'TV1_DblClick()' en intervenant avant ce qui fait que le 'TV1_Click()' est toujours exécuté AVANT le 2xClic que j'utilise pour replier une branche de l'arbre. Donc il n'est pas possible de faire la différence entre les deux : simple et double click s'entend. Citation:
Je continue mes recherches A+ Cordialement oracle7556 |
|
|
|
00
|
|
|
#4 | ||||
|
Membre éclairé
![]() Christophe AUMOITTEInscription : octobre 2009 Messages : 254 ![]() |
Bonsoir,
NodeClick fonctionne uniquement lorsque l'on clic sur un noeud. Il n'y a pas de variable à définir c'est comme un code de bouton classique. N'oublie pas que c'est un contrôle Activex, c'est un peu différent des outils proposés par défaut dans Access. Pour test, colle ceci dans le module du formulaire : Code :
![]() Concernant ton affaire de double clic : J'ai eu également ce problème. Cela dû à la vitesse de réception de ta souris. Donc, ce que je conseille, et afin de ne pas obliger tes utilisateurs à modifier les paramètres de leur souris, c'est d'utiliser le bouton droit à la place. Code :
Si je ne me trompe, c'est Loufab qui avait un truc très bien sur le Treeview et je crois que c'est avec son exemple que j'ai appris à gérer le treeview. Cordialement Christophe |
||||
|
|
00
|
|
|
#5 |
|
Futur Membre du Club
![]() Inscription : juillet 2006 Messages : 57 ![]() |
Bonjour,
@ marsouin_89 Merci de ces éléments de réponse qui vont me permettre de résoudre mes interrogations. C'est une excellente base de départ que je vais adapter à mon besoin spécifique. Je vais tester tout cela et l'astuce du clic droit m'ouvre d'autres perspectives très intéressantes. Super astuce ![]() Pour ce qui est du problème d'affichage du treeview, j'ai trouvé. En fait je n'exécutais pas dans le bon évènement ('on open' au lieu de 'on load') pour me positionner sur l'enregistrement 2xcliqué. Le déplacement du code fait, cela marche maintenant. Merci encore de votre aide. ![]() ![]() ![]() Je considère le post comme résolu. Cordialement A+ oracle7556 |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com