Controls sind Klassen



  • Hallo,
    Wenn ich ein Dialog Fenster anlege, so ist das ja eine Klasse. Nehm ich nun z.B eine Schaltfläche drin auf, so ist das doch auch eine Klasse. Wieso taucht sie in der Klassenansicht nicht auf? Ich seh auch im Code nicht, wo die Schaltfläche gezeichnet wird. Die müßte doch genau so erstellt werden, wie ein Fenster, oder? Stattdessen ist die Klasse die des Dialogfenster und die Nachricht halt die Methode dieser Klasse. Heisst das Dialogfenster z.B Cdialog und die Schaltfläche hat eine Onclick Funktion OnHello,dann steht im Code:
    Cdialog::OnHello()....wo aber ist die eigentliche Schaltfläche denn?
    Kam mir jemand auf die Sprünge helfen bitte 🙂

    Paloncino



  • man möge mich korregieren, wenn falsch. bin auch noch nicht so lange mit der mfc unterwegs. wenn du einen dialog erstellst, dann hast du eben nicht sofort eine klasse. das zeichnen des dialogs übernimmt die mfc für dich. willst du nun mit den steuerelementen arbeiten, erst dann, musst du eine klasse erzeugen die von cdialog abgleitet ist.

    willst du nun mit den steuerelemente arbeiten, legst du in deiner klasse dazu je eine member-variable an.



  • Ja und nein.

    Du brauchst für einen Dialog aufjedenfall eine Dialogklasse,
    da man ihn sonst nur schwer anzeigen könnte...
    Aber, der Button ist schon eine Klasse (CButton), welche
    jedoch automatisch vom Framework für dich erzeugt wird,
    wenn du einen speziellen button willst, kannst du aber
    eine Membervariable vom Typ CMyButton auf den Button anlegen
    im Klassenassistenten.

    Devil


Anmelden zum Antworten