muche62
Messages postés7Date d'inscriptionjeudi 10 février 2005StatutMembreDernière intervention31 mars 2005
-
17 mars 2005 à 12:35
muche62
Messages postés7Date d'inscriptionjeudi 10 février 2005StatutMembreDernière intervention31 mars 2005
-
21 mars 2005 à 10:45
Bonjour à tous, j'ai un problème avec un popupmenu.
J'ai deux fenêtre frmApp et frm2.
Lorque dans frmApp j'appel directement frm2, j'ai acces au popupmenu de la fenêtre ouverte avec show vbModal
Lorque dans frmApp j'appel, via un popupmenu frm2 avec le même code, là je n'accède plus au poppupmenu de frm2
si frm2 s'ouvre en vbModeless j'ai pas de problème
comment faire pour garder frm2 en modal et avoir toujours le popupmenu actif?
crenaud76
Messages postés4172Date d'inscriptionmercredi 30 juillet 2003StatutMembreDernière intervention 9 juin 200628 17 mars 2005 à 13:11
Si j'ai bien compris ton PB, je crois que tu es dans une impasse.
JE récapitule ce que j'ai compris .
1- frmApp est ouverte
2- Affichage du menu contextuel sur frmApp
3- Affcihage en modale de frm2 via ce menu
4- Le menu n'est plus dispo sur frmApp
5- Mais si tu affiches frm2 en non modale, tu as toujours le menu de dispo dans frmApp !
Ben si c'est ca ton souci, c'est logique !!! Si frm2 est modal, tu ne peux plus rien faire d'autre dans ton appli tant que frm2 est ouverte(=définition de la modalité d'une fenêtre), donc Windows considère le menu contextuel de frmApp inutile, puisque rendu inaccessible par la modalité de frm2 !!!
muche62
Messages postés7Date d'inscriptionjeudi 10 février 2005StatutMembreDernière intervention31 mars 2005 17 mars 2005 à 15:22
En fait c'est pas tellement ça le problème.
Je me suis sans doute mal exprimé.
C'est le menu popup de frm2 qui n'est plus actif lorsque l'appel frm2 par le menu popup de frmApp.
-1- Si je lance frm2 en non modal le popup de frm2 est actif dans tous les cas (appel par le popupmenu de frmApp ou directement par le biais d'un bouton par exemple)
-2- Si je lance frm2 en modal le popup de frm2 n'est plus actif si l'appel de frm2 est fait par le biais du popup de frmApp
-3- Si je lance frm2 en modal le popup de frm2 est actif si l'appel de frm2 est fait par le biais d'un bouton classique.
Or je veux pouvoir acceder au popupmenu de frm2 avec un appel à frm2 en Modal.
cs_CanisLupus
Messages postés3757Date d'inscriptionmardi 23 septembre 2003StatutMembreDernière intervention13 mars 200621 17 mars 2005 à 19:49
Salut, il me semble que ce sujet a déjà été débattu il n'y a pas si longtemps sur le forum.
Une petite explication, on ne peut exécuter +sieurs popupmenu en même temps. Voir l'aide de vb.
Quand tu ouvres un autre form en modal par un menu appelé par popupmenu, le code contenu dans l'item du menu est stoppé tant que le 2ème form n'est pas fermé. Donc, le menu (et popupmenu) n'est pas refermé.
Je ne sais pas si je me fais bien comprendre. Toujours est-il qu'il y a une astuce, pas très propre mais qui fonctionne si tu tiens absolument à ouvrir ton 2ème form en modal : un timer.
Dans le form1, tu poses un timer avec interval 1 (un peu plus s'il le faut mais pas plus de 10) et enabled false
' tu affiches ton menu du form1
PopupMenu Me.menu
'dans l'item qui ouvre form2 tu mets
Timer1.Enabled = True
'et dans le timer
Private Sub Timer1_Timer()
Form2.Show vbModal
Timer1.Enabled = False
End Sub
Ainsi, le menu a le temps de se refermer et c'est le timer qui ouvres le form2. Et tu peux utiliser popupmenu dans ton form2.
muche62
Messages postés7Date d'inscriptionjeudi 10 février 2005StatutMembreDernière intervention31 mars 2005 21 mars 2005 à 10:45
Ok ça marche bien comme ça, mais ne peut-on pas simplement fermer la fenêtre popupmenu de form1 avant le lancer form2 ?
J'ai fait un ou deux tests mais ça ne marche pas comme ça visiblement!