Comment ferais tu pour savoir sur quel "titre" on viens de cliquer (Titre1 ou titre2)
Car le probleme, c'est que lorsque l'on clique sur Titre1, on récupere bien l'evenement avec Titre1_Click(), jusque là pas de probleme, mais si on déplace la souris à droite sans descendre sur menu1 ou menu2, c'est l'evenement Titre2_Click() qui est généré alors que l'on a pas cliqué dessus mais juste déplacé la souris sur lui, VB enfonce le bouton à notre place.
Donc j'aimerais trouver une combine qui m'assure que j'ai bien cliqué sur Titre2 et non pas déplacé la souris apres avoir cliqué sur Titre1
mstarsup5
Messages postés527Date d'inscriptionlundi 15 octobre 2007StatutMembreDernière intervention10 octobre 20131 7 nov. 2007 à 17:58
Une combine simple serait de ne pas déplacer la souris :-p
T'as pas de problème quand tu utilises les menus d'internet explorer, word, excel, ou n'importe quel programme, si? Parce que ça fonctionne exactement pareil, et je n'ai encore jamais vu personne se plaindre ;-P
cs_andrebernard
Messages postés404Date d'inscriptionlundi 9 juin 2003StatutMembreDernière intervention 4 septembre 20131 7 nov. 2007 à 18:22
T'as raison mstarsup5 en fait c'est apparement une fonction de windows.
Donc loin de moi l'intention de profaner le temple de bill
Ce que j'aimerais c'est capter l'evenement clic sur le menu, mais bien le clic, pas le clic "virtuel" de bill.
Le fait qu'il déroule le menu à ma place en cliquant lui meme sur le titre2 ne me dérange pas vraiment, mais je voudrais avoir un evenement qui lui ne se fait pas avoir et detecte bien que je n'ai pas cliqué, mais juste déplacé, donc bien avoir un évenement distinct par clic.
cs_andrebernard
Messages postés404Date d'inscriptionlundi 9 juin 2003StatutMembreDernière intervention 4 septembre 20131 7 nov. 2007 à 18:26
Bonjour JmfMarques
VB enfonce le bouton à notre place
Ah le coquin !!!
Voyons voir avec quel code IL prend de telles libertés !!!
Quels autres évènements souris utilises-tu dans ton projet ?
En fait c'est un comportement normal, mais comment détecter un clic sur chaque Titre ou alors encore mieux, détecter un clic sur n'importe quel endroit du menu et si c'est sur un titre remonter son nom "Titre1" ou "Titre2" ou 0 si c'est à coté des titres
jmfmarques
Messages postés7666Date d'inscriptionsamedi 5 novembre 2005StatutMembreDernière intervention22 août 201427 7 nov. 2007 à 18:59
Comprends pas !
Un évènement est un évènement Subi par un contrôle (ou un item de menu) VB. L'évènement Click est un évènement. C'est l'utilisateur qui, en cliquant, le génère ... Et aucun évènement Clixk n'est subi par un contrôle ou un article de menu s'il n'y a pas de click fait sur ce contrôle ou cet article de menu.
N'aurais-tu pâs tenté (je m'interroge) de te substituer à VB (je ne sais pas, moi... en utilisant l'évènement click d'autre chose ... de ta Form, peut-être ?...)
Montre-nous donc ton code, s'il te plait (sinon on va jouer longtemps aux devinettes).
cs_andrebernard
Messages postés404Date d'inscriptionlundi 9 juin 2003StatutMembreDernière intervention 4 septembre 20131 8 nov. 2007 à 05:02
Voila en fait je n'ai pas vraiment de code.
Je voulais activer ou desactiver des menus selon si j'avais cliqué sur l'un ou l'autre.
Ce qui m'embete c'est cette histoire de ne pas avoir réellement cliqué, c'est à dire appuyé sur le bouton gauche de la souris sur le titre2.
Il m'aurait fallu un evenement qui détecte le CLIC sur le Titre2 et non pas un pseudo clic suite à un déplacement qui peut etre accidentel.
Dans les autres actions il faut bien faire l'appui sur le bouton gauche ou droit de la souris pour que l'evenement se genere, alors pourquoi dans ce cas il se genere tout seul ?
J'aurais plutot vu un evenement move (qui n'existe pas d'ailleur pour les menus) mais pas clic, car clic veux bien dire que j'appui sur le bouton
Je t'ai fait en petit code pour essayer de m'expliquer mieux, car je reconnais que ce n'ai pas simple.
mstarsup5
Messages postés527Date d'inscriptionlundi 15 octobre 2007StatutMembreDernière intervention10 octobre 20131 8 nov. 2007 à 08:08
Alors moi j'ai une réponse:
Ton bouton Titre2 étant sensé se dérouler tout seul quand tu passes dessus (si tu as déjà appuyé qq part sur le menu) (et puisqu'il a des sous titres !!!) ça ne sert à rien de faire titre2_click. Si tu fais titre2_click (ce qui ne sert à rien puisque c'est un menu déroulant), ton truc se produit.
Si, par contre, ton titre2 nécessite réellement un clic pour être activé (s'il n'a pas de sous titres), alors dans ce cas, le bug que tu as trouvé ne "fonctionne plus", parce que là, windows attendra que tu cliques effectivement dessus.
On pourrait se dire que les types de windows ont oublié de prévoir que si on appuie sur un menu déroulant, on peut vouloir que quelque chose se passe en plus du menu qui se déroule.
Mais si on y réfléchit bien, sachant que si on clique sur titre 1 pour voir son menu dérouler, qu'on lache le bouton, et si on place la souris (sans cliquer) sur titre2, alors le menu titre2 va se dérouler. Alors là on va avoir un problème, c'est que si jamais tu n'as pas envie d'exécuter un truc qu'il y a dans titre2 (tu passes ta souris sur le titre2 en essayant d'aller sur titre3 par exemple), soit ton application liée à titre2 quand tu cliques dessus se lance alors que tu ne le souhaites pas (tu veux juste aller sur titre3...), ce qui est chiant, soit l'appli ne se lance pas, et dans ce cas tu peux choisir les menus dans le déroulant de titre2 sans avoir lancé l'application que tu voulais à la base lancer en cliquant sur ton titre2.
Dans tous les cas, on a un problème si on lie une application au clic d'un titre du menu qui peut se dérouler.
Soit l'application se lance toute seule sans que tu le veuilles rien qu'en passant sur le titre, soit elle requiert un clic, mais comme si tu passes sur le titre, le menu se déroule tout seul, y va y avoir problème...
cs_andrebernard
Messages postés404Date d'inscriptionlundi 9 juin 2003StatutMembreDernière intervention 4 septembre 20131 8 nov. 2007 à 09:25
Merci à tous pour votre aide.
J'ai la facheuse manie de vouloir faire ce qui n'est pas possible.
J'aurais du etre beta testeur chez bilou.
Pour le jongleur JMFMARQUES
Merci beaucoup de ton code, simple et efficace.
J'ai encore un probleme, est ce qu'un carambar on peut le zipper et le passer par FTP