2010-09-25 2 views

Répondre

1

La fonction wxCreateDynamicObject peut être utilisé pour construire un nouvel objet d'un type donné, en fournissant un nom de chaîne. Si vous avez un pointeur vers l'objet wxClassInfo à la place, vous pouvez simplement appeler wxClassInfo :: CreateObject.

Vous devez inclure la macro IMPLEMENT_DYNAMIC_CLASS dans chaque classe que vous souhaitez créer dynamiquement des objets. IMPLEMENT_DYNAMIC_CLASS est une macro qui non seulement initialise le membre statique wxClassInfo, mais définit une fonction globale capable de créer un objet dynamique de la classe en question.

Exemple

Dans un fichier d'en-tête:

class wxFrame : public wxWindow 
{ 
DECLARE_DYNAMIC_CLASS(wxFrame) 

private: 
    wxString m_title; 

public: 
    ... 
}; 

Dans un fichier C++:

IMPLEMENT_DYNAMIC_CLASS(wxFrame, wxWindow) 

wxFrame::wxFrame() 
{ 
... 
} 
Questions connexes