Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : Ouvrir qu'une seul fois une autre fenetre [ Windows / Formulaire / Winforms / Controls ] (grami)

vendredi 15 décembre 2006 à 11:24:35 | Ouvrir qu'une seul fois une autre fenetre

grami

bonjour,

voila mon probleme : jai une fenetre principale de la qu'elle j'ouvre une autre fenetre, juske la c bon le probleme et que qd je clik une autre fois sur le bouton pour ouvrir jai une autre fenetre qui s'ouvre ( exemple pour "a propos" je pe avoir 2 ou plus ouverte en meme temp )

comment resoudre ce probleme, merci

voila mon code pour ouvrir la fentre

            Form3 frm = new Form3();
            frm.Show();

vendredi 15 décembre 2006 à 11:34:42 | Re : Ouvrir qu'une seul fois une autre fenetre

sebmafate

Membre Club Administrateur CodeS-SourceS
Salut...

tu peux reposer ta question en français sans utiliser de SMS ?

Réglement CodeS-SourceS

Sébastien FERRAND (blog)
Consultant Indépendant
[Microsoft MVP Visual C#]


vendredi 15 décembre 2006 à 11:38:19 | Re : Ouvrir qu'une seul fois une autre fenetre

Nikoui

En mettant le bout de code que tu cites dans ta méthode, tu instancie a chaque fois une nouvelle fenêtre. Plusieurs solutions à ton problème :

Dans le cadre de la fenêtre a propos, par exemple, tu peux l'afficher en "modale" (dans ce cas, il faudra que l'utilisateur la ferme avant de pouvoir revenir à la fenêtre précédente). Pour cela, remplace frm.Show() par frm.ShowModal();

Dans d'autre cas (ou tu ne veux pas qu'elle soit affichée en modale), tu peux soit déclarer ta fenêtre (frm) comme une variable de ta classe, et tester si elle est déjà affichée ou non avant de l'afficher le cas échéant.

vendredi 15 décembre 2006 à 11:41:13 | Re : Ouvrir qu'une seul fois une autre fenetre

grami

desole :)
bonjour,

voila mon probleme : jai une fenetre principale de la qu'elle j'ouvre une autre fenetre, jusque la c'est bon le probleme et que qand je clik une autre fois sur le bouton pour ouvrir jai une autre fenetre qui s'ouvre ( exemple pour "a propos" je peux avoir 2 ou plus ouverte en meme temp )

comment resoudre ce probleme, merci

voila mon code pour ouvrir la fenetre

            Form3 frm = new Form3();
            frm.Show();

vendredi 15 décembre 2006 à 11:47:18 | Re : Ouvrir qu'une seul fois une autre fenetre

sebmafate

Membre Club Administrateur CodeS-SourceS
merci.

Comme le dit Nikoui, utilise la méthode ShowDialog en lieu et place de la méthod Show()

Sébastien FERRAND (blog)
Consultant Indépendant
[Microsoft MVP Visual C#]


lundi 18 décembre 2006 à 22:29:45 | Re : Ouvrir qu'une seul fois une autre fenetre

ISABELLE6558

Bonjour,

La réponse ShowDialog est une réponse qui peut ne pas être totalement satisfaisante dans la mesure où la fenêtre ouverte est modale. Aussi j'ai essayé le petit bout de programme ci dessous pour ouvrir une fenêtre unique non modale. Il y a un petit problème si on ouvre et on ferme plusieurs fois le fenêtre on a une erreur  <ObjectDisposedException> que j'attrape mais celà ne me satisfait pas totalement, je préfèrerai une appli sans erreur.Il semble que _instance soit supprimé mais la variable n'est pas null Pourquoi cette erreur se produit-elle ?


public partial class Apropos : Form
    {
        private static Apropos _instance = null;

        private Apropos()
        {
            InitializeComponent();
        }


        public static void ShowUnique()
        {
            if (_instance == null)
                _instance = new Apropos();
            else
                _instance.Focus();
                
           try
           {
                _instance.Show();
           }
            catch (ObjectDisposedException e)
           {
               _instance = new Apropos();
               _instance.Show();
            }
        }

et dans la fenêtre principale l'appel de la fenêtre

        private void aProposToolStripMenuItem_Click(object sender, EventArgs e)
        {
            Apropos.ShowUnique();
        }



mardi 23 janvier 2007 à 12:05:24 | Re : Ouvrir qu'une seul fois une autre fenetre

bossun

si tu dans un environnement MDI, tu as la propriété MDIChild de ta form principale qui liste tous les formulaires déjà ouverts....

sion tu es en environnement SDI, tu peux regarder la classe

Application.Openfroms

[ Lien ]


Bossun

P.S1  C'est mieux de prendre son pied que de se prendre la tête!

/F< body>



Cette discussion est classé dans : ouvrir, ouvre, probleme, fenetre, jai


Répondre à ce message

Sujets en rapport avec ce message

ouverture d'une fenetre en pleine écran [ par Thanos_the_yopper ] en fait, j'ai une fenetre qui s'ouvre dans une autre (fenetre Mdi tout ça) et j'aurais voulu que celle qui s'ouvre à l'intérieur de l'autre soit en pl PB avec les application console [ par Mike ] Salut, j'ai un probleme avec les application en mode consol ( style fenetre DOS ), lorsque je lance un de ces programmes, il s'arrete automatiquement openfiledialog [ par yho ] bonjour,j'essaye d'utiliser la classe openfiledialog pour ouvrir une fenetre afin de choisir un fichier dans une liste ,voici mon code OpenFileDialog Ouvrir une nouvelle fenetre [ par kaiwoo ] Comment fait on pour ouvrir une nouvelle fenetre.... Par exemple : quan dje clique dans mon menu je voudrais que lorsque que je cliques sur l'une des Une image [ par rintchu ] Salut a tous, j'ai un petit probleme au point de vue interface et je crois que je vais craquer. J'ai une image que je veux mettre en arriere plan ( ba Problème de Form [ par yes ] Bonjour,Voila mon probleme : j'ai une fenetre (FormParent) qui ouvre une fenetre (FormFille1) avec la methode Show. Ensuite ouvre une seconde fentre ( Webbrowser .NET2 [ par Tilois ] Voila, je travaille avec le framework 2.0. J'utilise un webbrowser. Celui ci peut lever un évènement NewWindow lorsque la page que l'on affiche veut o probleme d'autoscroll [ par leprov ] salut a tous.jai un petit probleme avec l'autoscroll que jespere vous pourrez m'aider a resoudre.jai donc un pannel, dans lequel je place a la volée u probleme de Hook [ par Sylvain17 ] Salut a tous,Bon, c'est la suite d'hier pour ceux qui l'ont lu.Voila, j'arrive a partir d'une fenetre que j'ai codé, a envoyer des infos a une autre f ouvrir une fenetre dans un autre processus [ par bouloum ] Bonjour,Je voudrais ouvrir une fenetre enfant "child window" dans un autre processus. Ex: Ouvrir une fenetre texte qui s'affiche comme enfant dans un


Nos sponsors

Sondage...

CalendriCode

Novembre 2008
LMMJVSD
     12
3456789
10111213141516
17181920212223
24252627282930

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,234 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.