J_il
Messages postés109Date d'inscriptionmardi 27 mars 2007StatutMembreDernière intervention 9 septembre 2008
-
3 sept. 2007 à 13:32
J_il
Messages postés109Date d'inscriptionmardi 27 mars 2007StatutMembreDernière intervention 9 septembre 2008
-
5 sept. 2007 à 12:21
Bonjour à tous, je me permets de vous demander de l'aide car je reste baba lol
Je suis en train de développer un projet en VB 6.0 qui utilise des MDI mères et filles.
Lorsque je veux fermer une feuilles, j'utilise soit le menu ou bien l'événement Unload. Dans le menu il n'y a pas de problème, ma fermeture de programme fonctionne à merveille. Mais dans l'événement Unload, le même code ne fonctionne pas ? Pourquoi ?
Ce code concerne une MsgBox qui demande si on est sûr de quitter oui ou non le programme !
Voici le code :
Dim int_reponse_msgbox As Integer 'variable qui sert à recevoir ce que renvoie la MsgBox complexe
Je ne comprend pas pourquoi cela ne fonctionne pas !
Si vous saviez m'aider merci d'avance à tous
J-il
A voir également:
Mathurine a créé son profil sur un forum, en renseignant comme adresse électronique : mathurine[arobase]pixmail.org pourquoi a-t-elle écrit son adresse de cette manière ?
cs_DARKSIDIOUS
Messages postés15814Date d'inscriptionjeudi 8 août 2002StatutMembreDernière intervention 4 mars 2013131 3 sept. 2007 à 14:59
Salut,
Dans le menu quitter, c'est un menu perso, donc l'événement ne fait rien en soit.
L'événement Unload par contre est déclenché lorsque la fenêtre se ferme. Il est donc trop tard pour faire quoi que ce soit : elle se fermera de toute façon !
Il faut placer ton code dans l'événement QueryUnload qui lui peut être annulé par le paramètre Cancel :
Dim int_reponse_msgbox As Integer 'variable qui sert à recevoir ce que renvoie la MsgBox complexe
jrivet
Messages postés7392Date d'inscriptionmercredi 23 avril 2003StatutMembreDernière intervention 6 avril 201260 3 sept. 2007 à 13:41
Salut,
Dans le Unload je dirais qu'il faut que tu mettes a jour la variable Cancel selon le choix de la msgbox
Et d'ailleurs qu'est ce qui ne fonctionne pas?
cs_DARKSIDIOUS
Messages postés15814Date d'inscriptionjeudi 8 août 2002StatutMembreDernière intervention 4 mars 2013131 3 sept. 2007 à 13:56
Salut,
Lol oui c'est sûr que savoir ce qui ne fonctionne pas pourrais nous aider à résoudre le problème...
______________________________________
DarK Sidious
J_il
Messages postés109Date d'inscriptionmardi 27 mars 2007StatutMembreDernière intervention 9 septembre 2008 3 sept. 2007 à 14:06
Merci à vous de prendre attention à mon problème...
Ce qui ne fonctionne pas c'est que lorsque je clique sur la croix rouge de ma MDI, il m'affiche ma message box avec le oui et non et que lorsque je fais non il quitter quand même le programme...
Ce que je ne comprend pas c'est que ce code fonctionne super bien dans le menu quitter donc si je dis non il ferme rien et si je dis oui il quitter biensûr !
Voila ce qu'il se passe et je ne comprends pas pourquoi ?
Merci d'avance les gars
J-il
Vous n’avez pas trouvé la réponse que vous recherchez ?
cs_DARKSIDIOUS
Messages postés15814Date d'inscriptionjeudi 8 août 2002StatutMembreDernière intervention 4 mars 2013131 3 sept. 2007 à 20:54
Salut,
Tiens c'est marrant cà, j'avais jamais remarqué que l'événement Unload de la MDI possèdait un paramètre cancel !
______________________________________
DarK Sidious
J_il
Messages postés109Date d'inscriptionmardi 27 mars 2007StatutMembreDernière intervention 9 septembre 2008 3 sept. 2007 à 21:15
Re Darksidisous,
Dis tant que j'y suis j'ai aussi une petite question sur les InputBox !
Je les utilisent lors de recherche, donc quand je recherche une personne si j'entre rien et que je clique sur ok, il me dit bien que je n'ai pas entré quelque chose dans la boite. Mais comment gère le bouton annuler de cette InputBox ????
Moi j'aimerais savoir si c'est possible que lorsque je fais annuler, il me ferme ma feuille ?
cs_DARKSIDIOUS
Messages postés15814Date d'inscriptionjeudi 8 août 2002StatutMembreDernière intervention 4 mars 2013131 3 sept. 2007 à 21:21
Salut,
Il suffit de tester la valeur de retour : si chaîne vide("") alors click sur Ok, si vbNullString alors click sur annuler, ou un truc dans ce genre.
______________________________________
DarK Sidious
J_il
Messages postés109Date d'inscriptionmardi 27 mars 2007StatutMembreDernière intervention 9 septembre 2008 3 sept. 2007 à 21:23
Pour le moement j'ai ceci :
str_initiale = InputBox("Entrez la première lettre du nom du professeur ou son nom complet :" + Chr(13) + Chr(13) _
+ Chr(13) + "Exemple : dup pour dupont", "Recherche du professeur")
If str_initiale = "" Then
MsgBox "Aucun nom de professeur encodé !", , "Pas de nom encodé !"
Call Form_Activate
Exit Sub
End If
Donc la quand je n'entre rien et que je clique sur Ok ben il m'envoie bien cette MsgBox mais pour annuler je trouve pas !
cs_DARKSIDIOUS
Messages postés15814Date d'inscriptionjeudi 8 août 2002StatutMembreDernière intervention 4 mars 2013131 4 sept. 2007 à 10:00
Salut,
Arf, c'est peut-être l'inverse alors, je sais plus, fais une recherche sur le forum, la question a déjà été posée !
Perso, je n'utilise plus l'input box : je le trouve bien chiant à utiliser que ce soit au niveau du développeur (il n'est pas personnalisable !) ou du côté de l'utilisateur (y'a très peu de logiciel qui affiche un input box ! Bien souvent, il s'agit de boîte d'option avec plusieurs textbox et des options button, etc.).
______________________________________
DarK Sidious
J_il
Messages postés109Date d'inscriptionmardi 27 mars 2007StatutMembreDernière intervention 9 septembre 2008 5 sept. 2007 à 09:36
Salut, chaibat05, solution testée mais ne convient pas à ce que j'aimerais, sinon cela j'aurais pu le faire hihihihi je suis tout de même pas aussi nul lol
chaibat05
Messages postés1883Date d'inscriptionsamedi 1 avril 2006StatutMembreDernière intervention20 novembre 20072 5 sept. 2007 à 11:48
Salut,
Moi qui n' ai eu recours aux InputBox qu' une ou deux fois dans ma vie,
je préconise la privatisation de ce service D' autant plus que ça ne coute rien:
Une feuille,une TextBox et deux bouttons.Et l' acceuil et le service après vente
sont meilleurs.