IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Windows Forms Discussion :

[C#][Débutant] Comment faire une fonction FindWindow ?


Sujet :

Windows Forms

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de Cazaux-Moutou-Philippe
    Inscrit en
    Mai 2005
    Messages
    674
    Détails du profil
    Informations personnelles :
    Âge : 76

    Informations forums :
    Inscription : Mai 2005
    Messages : 674
    Par défaut [C#][Débutant] Comment faire une fonction FindWindow ?
    Bonjour

    Venant de Delphi, je me servais de FindWindow pour savoir si une fenetre etait ouverte

    comment faire la meme chose avec C#, car je ne trouves pas cette fonction

    en fait ce serait pour remplacer ce code, avec lequel j ai des soucis,
    car il plante la dessus

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    m_aFFilmsListe.bOpen != true
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
            private FFilmsListe m_aFFilmsListe;
     
            private void mListeFilms_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
            {
     
                //if (m_aFFilmsListe != null || m_aFFilmsListe.bOpen != true)
                //    return;
                // Déclaration de la fenetre
                m_aFFilmsListe = new FFilmsListe(this);
     
     
                // On docke la fenetre dans le Tab 1
                m_aFFilmsListe.Dock = System.Windows.Forms.DockStyle.Fill;
                m_aFFilmsListe.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None;
     
                m_aFFilmsListe.TopLevel = false;
                panel2.Controls.Add(m_aFFilmsListe);
     
                // Affichage de la fenetre
                m_aFFilmsListe.Show();
     
            }
    Merci

  2. #2
    Membre Expert
    Avatar de Piotrek
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2004
    Messages
    869
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Mars 2004
    Messages : 869
    Par défaut
    Salut

    Tu peux visiter la collection Application.OpenForms pour voir si la form que tu cherche s'y trouve (en comparant les noms par exemple)

  3. #3
    Membre éclairé Avatar de Cazaux-Moutou-Philippe
    Inscrit en
    Mai 2005
    Messages
    674
    Détails du profil
    Informations personnelles :
    Âge : 76

    Informations forums :
    Inscription : Mai 2005
    Messages : 674
    Par défaut
    Tu peux visiter la collection Application.OpenForms
    Aurais tu un petit exemple ?

    par ex : comment savoir si la fenetre dont le nom est Liste, est ouverte ?

    merci

  4. #4
    Rédacteur
    Avatar de Thomas Lebrun
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    9 161
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 9 161
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    foreach(Form f in Application.OpenForms)
    {
         if (f.Name == "Liste")
         {
              // La form est ouverte
         }
    }
    Pas testé donc ca va peut-être planter

  5. #5
    Membre éclairé Avatar de Cazaux-Moutou-Philippe
    Inscrit en
    Mai 2005
    Messages
    674
    Détails du profil
    Informations personnelles :
    Âge : 76

    Informations forums :
    Inscription : Mai 2005
    Messages : 674
    Par défaut
    Merci bcp a tous,
    ca marche

    je fais ca

    Mon ceode est il correct ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
            private void mListeFilms_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
            {
                Boolean bOpen = false;
                foreach (Form f in Application.OpenForms)
                {
                    if (f.Name == "FFilmsListe")
                    {
                      // MessageBox.Show("oui");
                        bOpen = false;
                    }
                    else
                    {
                        bOpen = true;
                    }
                }
     
                if (bOpen == true)
                {
                   FFilmsListe aFFilmsListe = new FFilmsListe(this);
                   aFFilmsListe.Show();
                }
              }

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [VBA-E] Comment faire une fonction utilsant une autre feuille
    Par EvaristeGaloisBis dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 12/04/2007, 16h27
  2. Comment faire une fonction - procédure
    Par Madmac dans le forum C
    Réponses: 14
    Dernier message: 12/08/2006, 09h57
  3. [Débutant]Comment exécuter une fonction tous les jours
    Par pseudomh dans le forum PostgreSQL
    Réponses: 3
    Dernier message: 21/06/2006, 16h10
  4. Comment faire une fonction qui renvoi un tableau.
    Par poly128 dans le forum Delphi
    Réponses: 2
    Dernier message: 01/06/2006, 01h04
  5. [VB6] Comment faire une fonction qui renvoie 2 résultats
    Par tazarine dans le forum VB 6 et antérieur
    Réponses: 10
    Dernier message: 15/01/2004, 00h13

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo