[Debutant] Afficher une fenêtre par dessus une autre...
2 réponses
Jérôme Quintard
Salut à tous,
Je souhaite afficher une fenêtre d'authentification au dessus la fenêtre
principale de mon application lors du 1er chargement. J'ai essayer de mettre
un fenetrelogin.showdialog(fenetreprincipale) dans la load mais je vois
uniquement la fenêtre d'authentification.
Comment je dois procéder pour que ça fonctionne ??
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
De Simone Alessandro
Jérôme Quintard a écrit :
Salut à tous,
Je souhaite afficher une fenêtre d'authentification au dessus la fenêtre principale de mon application lors du 1er chargement. J'ai essayer de mettre un fenetrelogin.showdialog(fenetreprincipale) dans la load mais je vois uniquement la fenêtre d'authentification. Comment je dois procéder pour que ça fonctionne ??
Merci
Jérôme
C'est normal. Dans ton form_load la fenêtre principale n'est pas *encore* visible. Si tu fais appel à ShowDialog, comme ce dernier est bloquant (c'est à dire qu'il attend que la fenêtre que tu vas ouvrir soit terminée pour continuer) bha ta fenêtre principale reste cachée.
je vois pour toi 2 solutions simples :
1) tu ouvres ta fenêtre principale, puis dans un événement (par exemple un click de bouton) tu fais appel à ShowDialog (l'événement doit être déclanché après que ta fenêtre principale soit visible).
2) tu fais un Show (non bloquant) dans ton form_load mais en désactivant ta fenetre principale jusque quand la fenetre d'auth se ferme. Pour cela :
code dans ton form_load de ta fenêtre principale :
Dim auth As New Form2 auth.Owner = Me Me.Enabled() = False arf.Show()
code dans le Form_Closed de ta fenetre d'auth :
Me.Owner.Enabled = True
J'espère que ça t'aide :-)
-- Alessandro De Simone email : (remove ".IHATESPAM")
Win32
Jérôme Quintard a écrit :
Salut à tous,
Je souhaite afficher une fenêtre d'authentification au dessus la fenêtre
principale de mon application lors du 1er chargement. J'ai essayer de mettre
un fenetrelogin.showdialog(fenetreprincipale) dans la load mais je vois
uniquement la fenêtre d'authentification.
Comment je dois procéder pour que ça fonctionne ??
Merci
Jérôme
C'est normal. Dans ton form_load la fenêtre principale n'est pas
*encore* visible. Si tu fais appel à ShowDialog, comme ce dernier est
bloquant (c'est à dire qu'il attend que la fenêtre que tu vas ouvrir
soit terminée pour continuer) bha ta fenêtre principale reste cachée.
je vois pour toi 2 solutions simples :
1) tu ouvres ta fenêtre principale, puis dans un événement (par exemple
un click de bouton) tu fais appel à ShowDialog (l'événement doit être
déclanché après que ta fenêtre principale soit visible).
2) tu fais un Show (non bloquant) dans ton form_load mais en désactivant
ta fenetre principale jusque quand la fenetre d'auth se ferme.
Pour cela :
code dans ton form_load de ta fenêtre principale :
Dim auth As New Form2
auth.Owner = Me
Me.Enabled() = False
arf.Show()
code dans le Form_Closed de ta fenetre d'auth :
Me.Owner.Enabled = True
J'espère que ça t'aide :-)
--
Alessandro De Simone
email : adesimon.IHATESPAM@ulb.ac.be (remove ".IHATESPAM")
Je souhaite afficher une fenêtre d'authentification au dessus la fenêtre principale de mon application lors du 1er chargement. J'ai essayer de mettre un fenetrelogin.showdialog(fenetreprincipale) dans la load mais je vois uniquement la fenêtre d'authentification. Comment je dois procéder pour que ça fonctionne ??
Merci
Jérôme
C'est normal. Dans ton form_load la fenêtre principale n'est pas *encore* visible. Si tu fais appel à ShowDialog, comme ce dernier est bloquant (c'est à dire qu'il attend que la fenêtre que tu vas ouvrir soit terminée pour continuer) bha ta fenêtre principale reste cachée.
je vois pour toi 2 solutions simples :
1) tu ouvres ta fenêtre principale, puis dans un événement (par exemple un click de bouton) tu fais appel à ShowDialog (l'événement doit être déclanché après que ta fenêtre principale soit visible).
2) tu fais un Show (non bloquant) dans ton form_load mais en désactivant ta fenetre principale jusque quand la fenetre d'auth se ferme. Pour cela :
code dans ton form_load de ta fenêtre principale :
Dim auth As New Form2 auth.Owner = Me Me.Enabled() = False arf.Show()
code dans le Form_Closed de ta fenetre d'auth :
Me.Owner.Enabled = True
J'espère que ça t'aide :-)
-- Alessandro De Simone email : (remove ".IHATESPAM")
Win32
aitoz
Ou encore, tu peux également mettre l'ouverture de ta fenetre login dans unn autre évenement. Logiquement tu devrais le mettre une fois que ton form_load de ta fenetre principale est terminé !? Essaye donc dans l'évènement "Validating" et sinon dans Validated, a tout hasard !
Sinon, ne te bloque pas la dessus parce que j'ai des applis pro qui fonctionnent comme toi actuellement et ca ne choque personne dans ma boite !
En plus, d'un point de vu sécurité, il est peut etre mieux que tes users ne voient pas les éléments de ta fenetre. Par exemple tu peux charger en fonction du user un environnement personnalisé, et alors ton probleme n'en serait plus un !
Ou encore, tu peux également mettre l'ouverture de ta fenetre login dans unn
autre évenement.
Logiquement tu devrais le mettre une fois que ton form_load de ta fenetre
principale est terminé !?
Essaye donc dans l'évènement "Validating" et sinon dans Validated, a tout
hasard !
Sinon, ne te bloque pas la dessus parce que j'ai des applis pro qui
fonctionnent comme toi actuellement et ca ne choque personne dans ma boite !
En plus, d'un point de vu sécurité, il est peut etre mieux que tes users ne
voient pas les éléments de ta fenetre.
Par exemple tu peux charger en fonction du user un environnement
personnalisé, et alors ton probleme n'en serait plus un !
Ou encore, tu peux également mettre l'ouverture de ta fenetre login dans unn autre évenement. Logiquement tu devrais le mettre une fois que ton form_load de ta fenetre principale est terminé !? Essaye donc dans l'évènement "Validating" et sinon dans Validated, a tout hasard !
Sinon, ne te bloque pas la dessus parce que j'ai des applis pro qui fonctionnent comme toi actuellement et ca ne choque personne dans ma boite !
En plus, d'un point de vu sécurité, il est peut etre mieux que tes users ne voient pas les éléments de ta fenetre. Par exemple tu peux charger en fonction du user un environnement personnalisé, et alors ton probleme n'en serait plus un !