Subclassing aller Controls
-
Hallo zusammen,
ist es mögliche alle Controls eines Dialogs/der ganzen Anwendung zu subclassen
ohne das für jedes Control explizit zu machen?
Wenn ich z.B. in einem Dialog 5 Eingabefelder habe, möchte ich nichtDDX_Control(pDX, IDC_EDIT1, m_MyEdit1); DDX_Control(pDX, IDC_EDIT2, m_MyEdit2); DDX_Control(pDX, IDC_EDIT3, m_MyEdit3); DDX_Control(pDX, IDC_EDIT4, m_MyEdit4); DDX_Control(pDX, IDC_EDIT5, m_MyEdit5);
schreiben müssen.
Danke
-
Das Problem ist, dass Du ein explizites Objekt brauchst zu dem der Subclass erfolgt. Das kann sich Dein Programm nicht denken.
Du kannst einen Array aus einem Paar (Id,Referenz/Zeiger auf CWnd-Objekt) bauen und dann eine Schleife drüber laufen lassen...
Ansonsten steht es Dir frei andere Tools zu verwenden, die einfach nur subclassen. Wenn ich mich recht entsinne Tools wie CSubclassWnd von Paul Dilascia, CHookWnd von PJ Naughter.
-
Danke für die Antwort. Ich werde dann die Objekte dynamisch erstellen.