Je travaille sur WindowsForm, Framework 1.1, VS.Net 2003.
Existe-t-il une différence entre les pop up affichées via MessageBox.Show et
celles affichées par MsgBox() ? Je parle caractéristiques de la fenêtre
ouverte : censée être modale ou non, apparaître ou non dans la barre des
application...
Quelque soit celle utilisée j'ai remarqué un comportement étrange sur mon
application : si mon application a le focus et que j'affiche une de ces pop
up, elles sont modales. Impossible d'accéder à l'application tant que l'on
n'a pas validé leur message. De plus, elles n'apparaissent pas dans la barre
des applications. Tout cela tombe bien car c'est ce qu'on leur demande.
Par contre, si mon application perd le focus avant l'affichage de la pop up,
celle-ci n'est plus du tout modale et apparait dans la barre des tâches...
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
Gilles TOURREAU
Le Mon, 10 Sep 2007 19:10:01 +0200, Laure a écrit:
Bonjour,
Je travaille sur WindowsForm, Framework 1.1, VS.Net 2003.
Existe-t-il une différence entre les pop up affichées via MessageBox.Show et celles affichées par MsgBox() ? Je parle caractéristiques de la fenêtre ouverte : censée être modale ou non, apparaître ou non dans la barre des application...
Quelque soit celle utilisée j'ai remarqué un comportement étrange sur mon application : si mon application a le focus et que j'affiche une de ces pop up, elles sont modales. Impossible d'accéder à l'application tant que l'on n'a pas validé leur message. De plus, elles n'apparaissent pas dans la barre des applications. Tout cela tombe bien car c'est ce qu'on leur demande.
Par contre, si mon application perd le focus avant l'affichage de la pop up, celle-ci n'est plus du tout modale et apparait dans la barre des tâches...
Quelqu'un aurait une explication ?
Merci d'avance,
Laure.
MsgBox comme (toutes les classes et méthodes présentes dans Microsoft.VisualBasic) est une méthode conçues pour les utilisateurs migrant leur application de VB6. Ces fonctions ne sont là uniquement pour éviter que les utilisateurs de VB6 ne soient "déroutées" et pour leur faciliter la migration.
Tout ce qui est contenu dans Microsoft.VisualBasic fait appel aux méthodes du Framework .NET. En l'occurence MsgBox fait appel à MessageBox du Framework.
En ce qui concerne les messages modaux, certaines méthode de Show() possèdent un paramètre owner qui représente la boite de dialogue possédant votre pop up... C'est à dire que si celui-ci est spécifié votre message sera modale par rapport à son "owner". En ce qui concerne le comportement de MsgBox, celui-ci "cherche" automatiquement la fenêtre active pour qu'il devient d'owner de votre message. Si aucune fenêtre n'est activée votre message n'est plus modale. Ce comportement reprend celui de VB6...
Pour un développement nouveau (et non une migration), il faut éviter d'utiliser les classes et méthodes à Microsoft.VisualBasic... Préférez les classes et méthodes du Framework... Cela permet dans une équipe mélangées de développeurs VB/C# de comprendre le code de l'un et de l'autre sans avoir du code spécifique à VB...
Cordialement
-- Gilles TOURREAU
S.A.R.L. P.O.S Le spécialiste en motoculture depuis + de 30 ans ! http://www.pos.fr
Le Mon, 10 Sep 2007 19:10:01 +0200, Laure
<Laure@discussions.microsoft.com> a écrit:
Bonjour,
Je travaille sur WindowsForm, Framework 1.1, VS.Net 2003.
Existe-t-il une différence entre les pop up affichées via
MessageBox.Show et
celles affichées par MsgBox() ? Je parle caractéristiques de la fenêtre
ouverte : censée être modale ou non, apparaître ou non dans la barre des
application...
Quelque soit celle utilisée j'ai remarqué un comportement étrange sur mon
application : si mon application a le focus et que j'affiche une de ces
pop
up, elles sont modales. Impossible d'accéder à l'application tant que
l'on
n'a pas validé leur message. De plus, elles n'apparaissent pas dans la
barre
des applications. Tout cela tombe bien car c'est ce qu'on leur demande.
Par contre, si mon application perd le focus avant l'affichage de la pop
up,
celle-ci n'est plus du tout modale et apparait dans la barre des
tâches...
Quelqu'un aurait une explication ?
Merci d'avance,
Laure.
MsgBox comme (toutes les classes et méthodes présentes dans
Microsoft.VisualBasic) est une méthode conçues pour les utilisateurs
migrant leur application de VB6. Ces fonctions ne sont là uniquement pour
éviter que les utilisateurs de VB6 ne soient "déroutées" et pour leur
faciliter la migration.
Tout ce qui est contenu dans Microsoft.VisualBasic fait appel aux méthodes
du Framework .NET. En l'occurence MsgBox fait appel à MessageBox du
Framework.
En ce qui concerne les messages modaux, certaines méthode de Show()
possèdent un paramètre owner qui représente la boite de dialogue possédant
votre pop up... C'est à dire que si celui-ci est spécifié votre message
sera modale par rapport à son "owner".
En ce qui concerne le comportement de MsgBox, celui-ci "cherche"
automatiquement la fenêtre active pour qu'il devient d'owner de votre
message. Si aucune fenêtre n'est activée votre message n'est plus modale.
Ce comportement reprend celui de VB6...
Pour un développement nouveau (et non une migration), il faut éviter
d'utiliser les classes et méthodes à Microsoft.VisualBasic... Préférez les
classes et méthodes du Framework... Cela permet dans une équipe mélangées
de développeurs VB/C# de comprendre le code de l'un et de l'autre sans
avoir du code spécifique à VB...
Cordialement
--
Gilles TOURREAU
gilles.tourreau@pos.fr
S.A.R.L. P.O.S
Le spécialiste en motoculture depuis + de 30 ans !
http://www.pos.fr
Le Mon, 10 Sep 2007 19:10:01 +0200, Laure a écrit:
Bonjour,
Je travaille sur WindowsForm, Framework 1.1, VS.Net 2003.
Existe-t-il une différence entre les pop up affichées via MessageBox.Show et celles affichées par MsgBox() ? Je parle caractéristiques de la fenêtre ouverte : censée être modale ou non, apparaître ou non dans la barre des application...
Quelque soit celle utilisée j'ai remarqué un comportement étrange sur mon application : si mon application a le focus et que j'affiche une de ces pop up, elles sont modales. Impossible d'accéder à l'application tant que l'on n'a pas validé leur message. De plus, elles n'apparaissent pas dans la barre des applications. Tout cela tombe bien car c'est ce qu'on leur demande.
Par contre, si mon application perd le focus avant l'affichage de la pop up, celle-ci n'est plus du tout modale et apparait dans la barre des tâches...
Quelqu'un aurait une explication ?
Merci d'avance,
Laure.
MsgBox comme (toutes les classes et méthodes présentes dans Microsoft.VisualBasic) est une méthode conçues pour les utilisateurs migrant leur application de VB6. Ces fonctions ne sont là uniquement pour éviter que les utilisateurs de VB6 ne soient "déroutées" et pour leur faciliter la migration.
Tout ce qui est contenu dans Microsoft.VisualBasic fait appel aux méthodes du Framework .NET. En l'occurence MsgBox fait appel à MessageBox du Framework.
En ce qui concerne les messages modaux, certaines méthode de Show() possèdent un paramètre owner qui représente la boite de dialogue possédant votre pop up... C'est à dire que si celui-ci est spécifié votre message sera modale par rapport à son "owner". En ce qui concerne le comportement de MsgBox, celui-ci "cherche" automatiquement la fenêtre active pour qu'il devient d'owner de votre message. Si aucune fenêtre n'est activée votre message n'est plus modale. Ce comportement reprend celui de VB6...
Pour un développement nouveau (et non une migration), il faut éviter d'utiliser les classes et méthodes à Microsoft.VisualBasic... Préférez les classes et méthodes du Framework... Cela permet dans une équipe mélangées de développeurs VB/C# de comprendre le code de l'un et de l'autre sans avoir du code spécifique à VB...
Cordialement
-- Gilles TOURREAU
S.A.R.L. P.O.S Le spécialiste en motoculture depuis + de 30 ans ! http://www.pos.fr
Laure
Bonjour,
Effectivement, après le dépôt de mon message j'ai découvert la notion d'owner et cela règle tous mes problèmes. Merci pour ces explications plus fines.
Laure.
"Gilles TOURREAU" a écrit :
Le Mon, 10 Sep 2007 19:10:01 +0200, Laure a écrit:
> Bonjour, > > Je travaille sur WindowsForm, Framework 1.1, VS.Net 2003. > > Existe-t-il une différence entre les pop up affichées via > MessageBox.Show et > celles affichées par MsgBox() ? Je parle caractéristiques de la fenêtre > ouverte : censée être modale ou non, apparaître ou non dans la barre des > application... > > Quelque soit celle utilisée j'ai remarqué un comportement étrange sur mon > application : si mon application a le focus et que j'affiche une de ces > pop > up, elles sont modales. Impossible d'accéder à l'application tant que > l'on > n'a pas validé leur message. De plus, elles n'apparaissent pas dans la > barre > des applications. Tout cela tombe bien car c'est ce qu'on leur demande. > > Par contre, si mon application perd le focus avant l'affichage de la pop > up, > celle-ci n'est plus du tout modale et apparait dans la barre des > tâches... > > Quelqu'un aurait une explication ? > > Merci d'avance, > > Laure.
MsgBox comme (toutes les classes et méthodes présentes dans Microsoft.VisualBasic) est une méthode conçues pour les utilisateurs migrant leur application de VB6. Ces fonctions ne sont là uniquement pour éviter que les utilisateurs de VB6 ne soient "déroutées" et pour leur faciliter la migration.
Tout ce qui est contenu dans Microsoft.VisualBasic fait appel aux méthodes du Framework .NET. En l'occurence MsgBox fait appel à MessageBox du Framework.
En ce qui concerne les messages modaux, certaines méthode de Show() possèdent un paramètre owner qui représente la boite de dialogue possédant votre pop up... C'est à dire que si celui-ci est spécifié votre message sera modale par rapport à son "owner". En ce qui concerne le comportement de MsgBox, celui-ci "cherche" automatiquement la fenêtre active pour qu'il devient d'owner de votre message. Si aucune fenêtre n'est activée votre message n'est plus modale. Ce comportement reprend celui de VB6...
Pour un développement nouveau (et non une migration), il faut éviter d'utiliser les classes et méthodes à Microsoft.VisualBasic... Préférez les classes et méthodes du Framework... Cela permet dans une équipe mélangées de développeurs VB/C# de comprendre le code de l'un et de l'autre sans avoir du code spécifique à VB...
Cordialement
-- Gilles TOURREAU
S.A.R.L. P.O.S Le spécialiste en motoculture depuis + de 30 ans ! http://www.pos.fr
Bonjour,
Effectivement, après le dépôt de mon message j'ai découvert la notion
d'owner et cela règle tous mes problèmes.
Merci pour ces explications plus fines.
Laure.
"Gilles TOURREAU" a écrit :
Le Mon, 10 Sep 2007 19:10:01 +0200, Laure
<Laure@discussions.microsoft.com> a écrit:
> Bonjour,
>
> Je travaille sur WindowsForm, Framework 1.1, VS.Net 2003.
>
> Existe-t-il une différence entre les pop up affichées via
> MessageBox.Show et
> celles affichées par MsgBox() ? Je parle caractéristiques de la fenêtre
> ouverte : censée être modale ou non, apparaître ou non dans la barre des
> application...
>
> Quelque soit celle utilisée j'ai remarqué un comportement étrange sur mon
> application : si mon application a le focus et que j'affiche une de ces
> pop
> up, elles sont modales. Impossible d'accéder à l'application tant que
> l'on
> n'a pas validé leur message. De plus, elles n'apparaissent pas dans la
> barre
> des applications. Tout cela tombe bien car c'est ce qu'on leur demande.
>
> Par contre, si mon application perd le focus avant l'affichage de la pop
> up,
> celle-ci n'est plus du tout modale et apparait dans la barre des
> tâches...
>
> Quelqu'un aurait une explication ?
>
> Merci d'avance,
>
> Laure.
MsgBox comme (toutes les classes et méthodes présentes dans
Microsoft.VisualBasic) est une méthode conçues pour les utilisateurs
migrant leur application de VB6. Ces fonctions ne sont là uniquement pour
éviter que les utilisateurs de VB6 ne soient "déroutées" et pour leur
faciliter la migration.
Tout ce qui est contenu dans Microsoft.VisualBasic fait appel aux méthodes
du Framework .NET. En l'occurence MsgBox fait appel à MessageBox du
Framework.
En ce qui concerne les messages modaux, certaines méthode de Show()
possèdent un paramètre owner qui représente la boite de dialogue possédant
votre pop up... C'est à dire que si celui-ci est spécifié votre message
sera modale par rapport à son "owner".
En ce qui concerne le comportement de MsgBox, celui-ci "cherche"
automatiquement la fenêtre active pour qu'il devient d'owner de votre
message. Si aucune fenêtre n'est activée votre message n'est plus modale.
Ce comportement reprend celui de VB6...
Pour un développement nouveau (et non une migration), il faut éviter
d'utiliser les classes et méthodes à Microsoft.VisualBasic... Préférez les
classes et méthodes du Framework... Cela permet dans une équipe mélangées
de développeurs VB/C# de comprendre le code de l'un et de l'autre sans
avoir du code spécifique à VB...
Cordialement
--
Gilles TOURREAU
gilles.tourreau@pos.fr
S.A.R.L. P.O.S
Le spécialiste en motoculture depuis + de 30 ans !
http://www.pos.fr
Effectivement, après le dépôt de mon message j'ai découvert la notion d'owner et cela règle tous mes problèmes. Merci pour ces explications plus fines.
Laure.
"Gilles TOURREAU" a écrit :
Le Mon, 10 Sep 2007 19:10:01 +0200, Laure a écrit:
> Bonjour, > > Je travaille sur WindowsForm, Framework 1.1, VS.Net 2003. > > Existe-t-il une différence entre les pop up affichées via > MessageBox.Show et > celles affichées par MsgBox() ? Je parle caractéristiques de la fenêtre > ouverte : censée être modale ou non, apparaître ou non dans la barre des > application... > > Quelque soit celle utilisée j'ai remarqué un comportement étrange sur mon > application : si mon application a le focus et que j'affiche une de ces > pop > up, elles sont modales. Impossible d'accéder à l'application tant que > l'on > n'a pas validé leur message. De plus, elles n'apparaissent pas dans la > barre > des applications. Tout cela tombe bien car c'est ce qu'on leur demande. > > Par contre, si mon application perd le focus avant l'affichage de la pop > up, > celle-ci n'est plus du tout modale et apparait dans la barre des > tâches... > > Quelqu'un aurait une explication ? > > Merci d'avance, > > Laure.
MsgBox comme (toutes les classes et méthodes présentes dans Microsoft.VisualBasic) est une méthode conçues pour les utilisateurs migrant leur application de VB6. Ces fonctions ne sont là uniquement pour éviter que les utilisateurs de VB6 ne soient "déroutées" et pour leur faciliter la migration.
Tout ce qui est contenu dans Microsoft.VisualBasic fait appel aux méthodes du Framework .NET. En l'occurence MsgBox fait appel à MessageBox du Framework.
En ce qui concerne les messages modaux, certaines méthode de Show() possèdent un paramètre owner qui représente la boite de dialogue possédant votre pop up... C'est à dire que si celui-ci est spécifié votre message sera modale par rapport à son "owner". En ce qui concerne le comportement de MsgBox, celui-ci "cherche" automatiquement la fenêtre active pour qu'il devient d'owner de votre message. Si aucune fenêtre n'est activée votre message n'est plus modale. Ce comportement reprend celui de VB6...
Pour un développement nouveau (et non une migration), il faut éviter d'utiliser les classes et méthodes à Microsoft.VisualBasic... Préférez les classes et méthodes du Framework... Cela permet dans une équipe mélangées de développeurs VB/C# de comprendre le code de l'un et de l'autre sans avoir du code spécifique à VB...
Cordialement
-- Gilles TOURREAU
S.A.R.L. P.O.S Le spécialiste en motoculture depuis + de 30 ans ! http://www.pos.fr