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 Discussion :

La creation de classe


Sujet :

C

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    309
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 309
    Par défaut La creation de classe
    Bonjour à tous

    Je viens de decouvrir avec surprise en lisant le super TUTO de MELEM que en fin de compte pour le C les controles sont exactement la meme chose qu'une fenetre

    Ce sont des objets regis par la meme classe

    La question que je me pose, c'est si l'on a dans un programme des fenetres, avec des boutons, des TextBox, ComboBox, Label etc.., si j'ai bien compris je n'aurais qu'une seule fois ce code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    WNDCLASS wc;
        wc.cbClsExtra     = 0;
        wc.cbWndExtra     = 0;
        wc.hbrBackground  = (HBRUSH)(COLOR_WINDOW + 1);
        wc.hCursor        = LoadCursor(NULL, IDC_ARROW);
        wc.hIcon          = LoadIcon(NULL, IDI_APPLICATION);
        wc.hInstance      = hInstance;
        wc.lpfnWndProc    = WndProc;
        wc.lpszClassName  = "Classe 1";
        wc.lpszMenuName   = NULL;
        wc.style          = CS_HREDRAW | CS_VREDRAW;
     
        RegisterClass(&wc);
    Est ce qu'il existe des cas ou il faut en creer une seconde classe que l'on nommerait "Classe 2"???
    Ou bien il n'y a jamais qu'une seule declaration de classe par programme pour tout ce qui est fenetre et controles

    Merci de vos eclaircissements

  2. #2
    Membre éclairé
    Inscrit en
    Avril 2010
    Messages
    66
    Détails du profil
    Informations personnelles :
    Âge : 34

    Informations forums :
    Inscription : Avril 2010
    Messages : 66
    Par défaut
    Bonjour,

    Eh bien, si votre programme comporte plusieurs fenêtres dont au moins un des éléments interne (un Label, un ComboBox), vous serez amené à refaire une ou plusieurs autres classes que vous devrez ensuite enregistrer.
    A vérifier, mais je pense que lorsque vous envoyez un message, la variable hwnd de votre structure MSG, vous indique à quelle fenêtre a été envoyé le message.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    typedef struct tagMSG {
      HWND   hwnd;
      UINT   message;
      WPARAM wParam;
      LPARAM lParam;
      DWORD  time;
      POINT  pt;
    } MSG, *PMSG, *LPMSG;

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    309
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 309
    Par défaut
    Bonjour HODER

    Merci de votre reponse.
    Donc il faudrait faire au moins une classe par fenetre.

    Et utiliser la classe de chaque fenetre pour creer tous ses controles (TextBox, Bouton, etc ...)

    Ai-je bien compris ???

  4. #4
    Membre éclairé
    Inscrit en
    Avril 2010
    Messages
    66
    Détails du profil
    Informations personnelles :
    Âge : 34

    Informations forums :
    Inscription : Avril 2010
    Messages : 66
    Par défaut
    Oui, mais je l'ai seulement lu, jamais essayé donc a prendre avec des pincettes, mais il me semble que c'est bien l'idée : créer sa fenêtre puis l'enregistrer avec RegisterClassEx(), puis Update() et Show(), et pour la classe MSG, je pense que si la structure contient l'information "Quelle fenêtre a reçu le message ?" via l'existence de la variable HWND hwnd, c'est pour un programme multi-fenêtres.

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    309
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 309
    Par défaut
    Merci de ta reponse HODER

    Je vais aller dans ton sens et faire des essais, "Pincettes inside"

    Je te remercie et bonne fin de WE

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

Discussions similaires

  1. creation de classe et mapping hibernate
    Par cyreel dans le forum Persistance des données
    Réponses: 3
    Dernier message: 25/09/2008, 10h23
  2. creation de classe
    Par deubelte dans le forum Macros et VBA Excel
    Réponses: 18
    Dernier message: 23/11/2007, 08h37
  3. pb de creation de classe de connexion
    Par oceane751 dans le forum JDBC
    Réponses: 2
    Dernier message: 30/07/2007, 15h37
  4. creation dune classe et utilisation
    Par le_voisin dans le forum C++
    Réponses: 9
    Dernier message: 30/08/2006, 21h38
  5. Parseur XML to Java pour creation de Class
    Par yannick101 dans le forum Format d'échange (XML, JSON...)
    Réponses: 1
    Dernier message: 18/07/2005, 14h20

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