none
VS2005 : Comment accéder aux propriétés (events, messages) si utilisation d'une classe dérivée de CDialog ? RRS feed

  • Question

  • Bonjour,

     

    Lorsque j'associe une classe à une boite de dialogue dans VS2005, la classe dérive de CDialog. En mdoe design, j'accède sans soucis aux propriétés de la boite de dialogue et de ses contrôles (Controls events, Messages, ...) via la fenêtre propriétés.

     

    // CFileCopy dialog

    IMPLEMENT_DYNAMIC(CFileCopy, CDialog)

    CFileCopy::CFileCopy(CWnd* pParent /*=NULL*/): CDialog(CFileCopy::IDD, pParent)

     

    Lorsque je modifie la classe associée à ma boite de dialogue pour ne plus dériver de CDialog, mais d'une classe CMonDialog dérivant elle même de CDialog (cette classe implémente du code commun entre tous les dialogues), les parties Controls Events et Messages de la fenêtre propriétés sont vides ! Plus moyen d'associer une méthode à un message de la boite de dialogue elle même ou d'un de ses contrôles.

     

    // CFileCopy dialog

    IMPLEMENT_DYNAMIC(CFileCopy, CMonDialog)

    CFileCopy::CFileCopy(CWnd* pParent /*=NULL*/): CMonDialog(CFileCopy::IDD, pParent)

     

    Si je reviens en arrière et que je remets CDialog, cela fonctionne de nouveau. Je n'avais pas ce soucis en Visual C++ 6.0.

     

    Connaissez-vous un moyen d'accéder aux messages, même lorsqu'une classe ne dérive pas directement de CDialog ? C'est assez génant pour gérer des messages.

     

    D'avance merci.

    François.

     

    jeudi 5 juillet 2007 07:38

Toutes les réponses