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

C++/CLI Discussion :

C++/CLI : gestion de fen�tres filles � partir d'une fen�tre m�re


Sujet :

C++/CLI

  1. #1
    Membre �clair�
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    243
    D�tails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyr�n�es)

    Informations forums :
    Inscription : Janvier 2008
    Messages : 243
    Par d�faut C++/CLI : gestion de fen�tres filles � partir d'une fen�tre m�re
    Bonjour,

    Pose de mon probl�me:

    J'ai une application avec une Form que j'appelle "m�re"; cette Form contient une listView avec diff�rents Items.

    Quand l'utilisateur fait un doubleClick sur un Item de la listView l'application ouvre une fen�tre que j'appelle "fille".

    Cette fen�tre "fille" permet � l'utilisateur d'agir sur les param�tres de l'Item s�lectionn�.

    L'utilisateur doit pouvoir avoir plusieurs fen�tres "filles" ouvertes en m�me temps ...

    Jusque l� pas de probl�me

    Par contre c'est l� que mon probl�me arrive:

    Quand l'utilisateur fait un doubleClick sur un Item qui poss�de d�j� une fen�tre fille ouverte, je voudrais que cette fen�tre soit r�veill�e pour attirer l'attention de l'utilisateur.

    Le probl�me est que chaque fen�tre "fille" une fois ouverte vit sa vie seule et que l'application qui a lanc� les fen�tres "fille" conna�t tout juste leur existence, mais ne sait rien d'autre ..

    Je n'ai aucune id�e de comment faire �a proprement.

    Si quelqu'un pouvait m'aiguiller ce serait sympa.

    Bonne journ�e

  2. #2
    Expert �minent
    Avatar de M�dinoc
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 397
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 41
    Localisation : France

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 397
    Par d�faut
    Ta fen�tre "fille" (en fait, plut�t une fen�tre "owned") c'est une Form^ (ou classe descendante de Form) �galement, non?

    Tu peux m�moriser sa r�f�rence dans ta Form principale une fois qu'elle est ouverte, et interagir avec lors d'un clic...
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parl� avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  3. #3
    Expert confirm�
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    F�vrier 2005
    Messages
    5 503
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 53
    Localisation : France, Val de Marne (�le de France)

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : Conseil

    Informations forums :
    Inscription : F�vrier 2005
    Messages : 5 503
    Par d�faut
    WinForms, je suppose.
    La m�thode Activate de la classe Form.
    http://msdn.microsoft.com/en-us/libr...v=vs.110).aspx

    Vous faites en sorte que dans le constructeur de la classe du "sous" formulaire, il appel une m�thode d'enregistrement de l'objet "formulaire racine".
    Dans les m�thodes Close du "sous" formulaire, vous appelez une m�thode de d�senregistrement.
    La classe racine n'a qu'a stocker ces r�f�rences dans une table d'association et appeler la m�thode Activate sur ces r�f�rences au moment opportun.

  4. #4
    Membre �clair�
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    243
    D�tails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyr�n�es)

    Informations forums :
    Inscription : Janvier 2008
    Messages : 243
    Par d�faut
    Merci Bacelar,

    Je regarde �a d�s que je peux.

    Avant d'ouvrir la Form "fille" l'application "m�re" stocke des donn�es dans un singleton qui sert de boite aux lettres. La Form "fille" s'ouvre et r�cup�re les donn�es, puis vit sa vie ind�pendamment.

    Toutes les Forms "fille" sont ouvertes � partir du m�me �v�nement ItemActivate de la listView et de la m�me fa�on.

    Dans le traitement de l'�v�nement je recherche d'abord quel Item a �t� cliqu� dans la listView, je stocke les donn�es correspondante � l'Item dans le singleton, puis je lance la fen�tre fille par ces 2 lignes.

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
     Formulaire ^ Form2 = gcnew Formulaire;
     Form2->Show (this);
    La fen�tre fille en s'ouvrant r�cup�re ses donn�es dans le singleton, puis fonctionne comme une fen�tre ind�pendante.

    L'utilisateur peut alors double cliquer sur un autre Item de la listView et disposer d'une seconde fen�tre, puis d'une 3i�me et ainsi de suite.

    Bonne soir�e

  5. #5
    Expert confirm�
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    F�vrier 2005
    Messages
    5 503
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 53
    Localisation : France, Val de Marne (�le de France)

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : Conseil

    Informations forums :
    Inscription : F�vrier 2005
    Messages : 5 503
    Par d�faut
    Pourquoi passer par un singleton.
    Le plus simple est de passer par des param�tres du constructeur.
    Passez en param�tre aussi le formulaire parent.
    Dans le constructeur de votre Form Fille, enregistrez la en appelant un m�thode d�di�e de votre Form principale.
    Dans le Close de la fen�tre de vos fen�tres secondaire, vous appelez la m�thode de d�senregistrement de votre Form principale.
    ...
    Dans la m�thode d'enregistrement de votre Form principale, vous associez la Form secondaire � une cl� dans une table d'association.
    Dans la m�thode de d�senregistrement de votre Form principale, vous supprimez cette association.

    Dans ItemActivate, on commence par lire la table d'association et faire un Activate sur le formulaire secondaire s'il est enregistr�, sinon on cr�e le formulaire secondaire, en passant en param�tre les informations n�cessaires.

  6. #6
    Membre �clair�
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    243
    D�tails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyr�n�es)

    Informations forums :
    Inscription : Janvier 2008
    Messages : 243
    Par d�faut
    Citation Envoy� par bacelar Voir le message
    Pourquoi passer par un singleton.
    C'est parce que je ne sais pas faire autrement.


    Citation Envoy� par bacelar Voir le message
    Le plus simple est de passer par des param�tres du constructeur.
    Passez en param�tre aussi le formulaire parent.
    Je ne me suis jamais trop pench� sur la fa�on utilis�e par Visual pour construire les Form ...
    Je me contente d'utiliser l'interface graphique.

    J'ai beaucoup programm� en assembleur, puis en Fortran et en C et la programmation objet reste encore une science un peu obscure pour moi.

    Merci, je vais essayer de comprendre mais pour l'instant il m'a fallu d�placer mes priorit�s.

    Bonne journ�e.

  7. #7
    Expert confirm�
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    F�vrier 2005
    Messages
    5 503
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 53
    Localisation : France, Val de Marne (�le de France)

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : Conseil

    Informations forums :
    Inscription : F�vrier 2005
    Messages : 5 503
    Par d�faut
    Le passage de param�tres, c'est comme en C.

  8. #8
    Membre �clair�
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    243
    D�tails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyr�n�es)

    Informations forums :
    Inscription : Janvier 2008
    Messages : 243
    Par d�faut
    Bonjour,

    Aujourd'hui j'ai trouv� 5 minutes pour me replonger sur ce probl�me.

    J'ai cr�� une Form1 puis une seconde Form2.

    Dans la forme 1 j'ai ajout� un bouton que j'ai associ� � ce bout de code:

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    i++;
    Form2^ f2 = gcnew Form2();
    f2->Show (this);
    f2->clef = i;
    i est un entier.

    Dans Form2 j'ai rajout� une variable :

    et une textbox + un bouton associ� �:

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    private: System::Void button1_Click(System::Object^  sender, System::EventArgs^  e) 
    {
    	 textBox1->Text = clef.ToString();
    }

    Quand j'ouvre plusieurs fen�tres Form2, je visualise bien 1, 2, 3, etc ... dans la textbox. Donc mes fen�tres fille r�cup�rent bien leur clef respective.

    Mais je ne vois toujours pas comment on peut r�activer une fen�tre d�j� instanci�e ...

    Exemple : je sais que la fen�tre qui a la clef n� 3 existe d�j�, comment puis je la r�veiller?

    De m�me si je ferme la fen�tre 3 comment avertir la Form1 de cet �v�nement?

    Bonne soir�e.

  9. #9
    Membre �clair�
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    243
    D�tails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyr�n�es)

    Informations forums :
    Inscription : Janvier 2008
    Messages : 243
    Par d�faut
    Citation Envoy� par bacelar Voir le message
    Dans ItemActivate, on commence par lire la table d'association et faire un Activate sur le formulaire secondaire s'il est enregistr�, sinon on cr�e le formulaire secondaire, en passant en param�tre les informations n�cessaires.

    En fait c'est �a que je ne vois pas comment faire ...

    Vu de Form1 toutes les Form2 sont les m�mes et comment en r�veiller une plut�t qu'une autre ...

    Bonne soir�e

  10. #10
    Expert �minent
    Avatar de M�dinoc
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 397
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 41
    Localisation : France

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 397
    Par d�faut
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    private:
    	Dictionary<int, Form2^> formulairesOuverts;
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parl� avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  11. #11
    Membre �clair�
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    243
    D�tails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyr�n�es)

    Informations forums :
    Inscription : Janvier 2008
    Messages : 243
    Par d�faut
    Citation Envoy� par M�dinoc Voir le message
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    private:
    	Dictionary<int, Form2^> formulairesOuverts;
    Bonjour M�dinoc,


    Merci.
    Vu mon niveau c'est un peu laconique, mais cela m'a servi � d�couvrir des choses.

    J'ai d�couvert qu'il existe une propri�t� qui s'appelle OwnedForms (VOIR ICI)

    Mais je ne comprends pas bien ...

    Je pense qu'il faut cr�er une Array (peut-�tre ce que vous appelez Dictionnary?), mais o� et comment la d�clarer? c'est toujours mon probl�me.

    Ensuite je pense qu'� chaque cr�ation de Form il faut faire un AddOwnedForm pour mettre la Form dans le dictionnaire.

    Est ce que je suis sur la bonne voie?

    Bonne journ�e

  12. #12
    Expert �minent
    Avatar de M�dinoc
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 397
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 41
    Localisation : France

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 397
    Par d�faut
    Je ne connaissais pas les Owned Forms, je voulais juste te dire de simplement m�moriser les formulaires que tu cr�es dans une variable membre, plut�t que chercher � les "retrouver" quand tu en as besoin.
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parl� avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  13. #13
    Membre �clair�
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    243
    D�tails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyr�n�es)

    Informations forums :
    Inscription : Janvier 2008
    Messages : 243
    Par d�faut
    Citation Envoy� par M�dinoc Voir le message
    Je ne connaissais pas les Owned Forms, je voulais juste te dire de simplement m�moriser les formulaires que tu cr�es dans une variable membre, plut�t que chercher � les "retrouver" quand tu en as besoin.
    C'est comme cela que je l'avais compris ..

    J'ai r�ussi � faire ce que je voulais, mais je ne sais pas si la m�thode utilis�e est tr�s professionnelle.

    J'ai fait une List de mes Form...


    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    private:
    List<Form^> ^ mes_formes;
    .
    .
     
    mes_formes = gcnew List<Form^>; 
    .
    .
    Form2 ^f2 = gcnew Form2();
    mes_formes->Add(f2);
    f2->Show(this);
    Ensuite en faisant :
    J'arrive � redonner le focus � la forme qui m'int�resse

    J'arrive aussi � la modifier (taille, titre, etc ...)

    Maintenant si cette m�thode tient la route, il faut que je trouve comment une Form fille peut alerter la Form m�re du fait qu'elle a �t� ferm�e par l'utilisateur.

    Bonne journ�e.

  14. #14
    Expert �minent
    Avatar de M�dinoc
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 397
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 41
    Localisation : France

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 397
    Par d�faut
    Tu �coutes l'�v�nement FormClosed...
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parl� avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  15. #15
    Membre �clair�
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    243
    D�tails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyr�n�es)

    Informations forums :
    Inscription : Janvier 2008
    Messages : 243
    Par d�faut
    Citation Envoy� par M�dinoc Voir le message
    Tu �coutes l'�v�nement FormClosed...
    Mais comment et avec quoi?

    Il faudrait un contr�le dans Form1 qui s'active lors d'un FormClosed d'une des Forms

    Je ne vois pas du tout comment faire �a.

    Au fait tu ne m'as pas dit si ma solution avec la List est une solution acceptable.

    Bonne soir�e

  16. #16
    Expert confirm�
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    F�vrier 2005
    Messages
    5 503
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 53
    Localisation : France, Val de Marne (�le de France)

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : Conseil

    Informations forums :
    Inscription : F�vrier 2005
    Messages : 5 503
    Par d�faut
    A oui, je n'avais pas pens� aux events publi�s par les Formulaires.
    Ca simplifie le code de gestion de cette fonctionnalit� mais l'utilisation des delegates en C++/CLI pour une personne venant du C++ standard, c'est loin d'�tre naturel.

    L'utilisation de la liste, c'est la bonne voie. Le probl�me, c'est que vous devez utilisez un identifiant et non un indice. Si vous voulez ouvrir une Form fille pour l'item de clef "2" sans ouvrir l'item de clef "1", vous avez un probl�me avec une list, car il aura plein de trou.
    On utilise donc une autre structure qui associe une cl� � un objet, c'est le "Dictionary<int, Form2^> " de M�dinoc.
    http://msdn.microsoft.com/en-us/libr...v=vs.110).aspx
    C'est comme votre liste, sauf que les objets ne sont pas stock�s les uns derri�re les autres, mais associe une cl� � un objet.

    en ajoutant une propri�t� public m_cle � votre classe de formulaire secondaire, le code, avec utilisation de delegate sur l'event FormClosed.

    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
    23
    24
    private:
    Dictionary<int, Form2^> formulairesOuverts;
    .
    .
     
    formulairesOuverts = gcnew Dictionary<int, Form2^>; 
    .
    .
    .
    if(!formulairesOuverts->ContainsKey(clef))
    {
        formulairesOuverts->Add(clef,gcnew Form2(clef));
        ((Form2^)(formulairesOuverts[clef]))->FormClosed += gcnew System::Windows::Forms::FormClosedEventHandler(this, &Form1::Unregister);
    }
    formulairesOuverts[clef]->Show();
     
    ...
    private: void Unregister(System::Object^  sender, FormClosedEventArgs^ e)
    {
        if(formulairesOuverts->ContainsValue((Form2^)(sender)))
       {
          formulairesOuverts->Remove(((Form2^)(sender))->m_cle);
       }
    }
    Mais je pense que l'utilisation des delegates va poser des probl�mes de threading.

    Donc, un approche plus safe est de faire un appel � la m�thode Unregister depuis le formulaire secondaire, il suffit d'utiliser le champ Owner du formulaire pour retrouver le formulaire principale et de le caster en Form1.

    P.S.:"OwnedForms", c'est une mauvaise voie (ou tr�s indirecte, mais tout les chemins m�nent � Rome ).

  17. #17
    Expert confirm�
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    F�vrier 2005
    Messages
    5 503
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 53
    Localisation : France, Val de Marne (�le de France)

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : Conseil

    Informations forums :
    Inscription : F�vrier 2005
    Messages : 5 503
    Par d�faut
    J'ai oubli� de dire que souvent les contr�les .NET multi-lignes ont des propri�t�s avec des Noms type "Tags" pour chaque ligne qui sont souvent utilis�es pour stocker ces r�f�rences.

    Dans notre cas, cela implique que nous n'aurions plus de champ dictionnaire "formulairesOuverts", mais que l'ont stockerait les r�f�rences directement dans le champ "Tags" de la ligne du control.

  18. #18
    Expert �minent
    Avatar de M�dinoc
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 397
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 41
    Localisation : France

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 397
    Par d�faut
    Le cast n'est pas n�cessaire sur cette ligne:
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
        ((Form2^)(formulairesOuverts[clef]))->FormClosed += gcnew System::Windows::Forms::FormClosedEventHandler(this, &Form1::Unregister);
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parl� avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  19. #19
    Membre �clair�
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    243
    D�tails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyr�n�es)

    Informations forums :
    Inscription : Janvier 2008
    Messages : 243
    Par d�faut
    Bonsoir et merci � tous deux ...

    Bon c'est vrai que je suis un peu (beaucoup) dans le brouillard, ..

    J'ai essay� de compiler le bout de code de Bacelar, ..

    le compilateur me jette sur :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    if(!formulairesOuverts->ContainsKey(clef))
    avec le message :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    error C2819: type 'System::Collections::Generic::Dictionary<TKey,TValue>' does not have an overloaded member 'operator ->'
    il me jette aussi sur :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    formulairesOuverts->Add(clef,gcnew Form2(clef));
    avec le message :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    error C2232: '->System::Collections::Generic::Dictionary<TKey,TValue>::Add' : left operand has 'class' type, use '.'
    Et il me jette aussi dans Unregister avec des messages similaires

    J'ai essay� divers trucs mais toujours les erreurs .. je ne comprends parce que si on regarde les exemples de Microsoft cela para�t correct ..

    Bonne soir�e

  20. #20
    Expert �minent
    Avatar de M�dinoc
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 397
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 41
    Localisation : France

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 397
    Par d�faut
    D�sol�, il y avait une erreur dans la ligne que j'ai propos�e: Il manquait un chapeau:
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    Dictionary<int, Form2^>^ formulairesOuverts;
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parl� avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

+ R�pondre � la discussion
Cette discussion est r�solue.
Page 1 sur 2 12 Derni�reDerni�re

Discussions similaires

  1. R�ponses: 3
    Dernier message: 10/05/2012, 14h35
  2. R�ponses: 1
    Dernier message: 26/12/2010, 19h29
  3. R�ponses: 1
    Dernier message: 22/08/2007, 09h50
  4. Controler une fen�tre a partir d'une autre fen�tre
    Par Invit� dans le forum G�n�ral JavaScript
    R�ponses: 11
    Dernier message: 24/08/2006, 21h21
  5. Afficher une Fen�tre MDI � partir d'une DLL
    Par FredericB dans le forum C++Builder
    R�ponses: 2
    Dernier message: 06/12/2005, 16h58

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