Eigene CFrameWnd Klasse erstellen



  • Hallo Leute,
    ich habe eine Klasse die MyCFrameWnd heißt und von CFrameWnd abgeleitet ist. Effektiv hat meine Klasse nur eine neue Membervariable.

    Der Aufruf CDocTemplate::CreateNewFrame(...) gibt einen CFrameWnd-Pointer zurück. Am liebsten würde ich diesen Aufruf auch für meine Klasse benutzen und hinterher den neu hinzugekommenen Wert instanzieren. Ist das möglich? und wenn ja wie?

    Bis jetzt habe ich das mit einem cast probiert aber nach der Wert instanzierung wurde etwas in der MyCView überschrieben und es gab einen riesen absturz...

    Dank im vorraus


  • Mod

    Hast Du Deine Klasse auch mit DECLARE_DYNCREATE/IMPLEEMNT_DYNCREATE definiert und auch in dem Doctemplae Deinen Dokuement-Klassennamen angegeben?



  • Hast Du Deine Klasse auch mit DECLARE_DYNCREATE/IMPLEEMNT_DYNCREATE definiert...

    Ja das der Assistent selbst gemacht. Da die Vererbung an dieser stelle nicht wirklich schwer war hab ich die neue Klasse einfach mit dem Assistenten erstellt damit ich auch darüber bequem Methoden für bestimmte Nachrichten (z.B. OnInitiliseUpdate()) einfügen kann.

    ...in dem Doctemplae Deinen Dokuement-Klassennamen angegeben?

    Nein, aber macht das was in diesem Fall? Ich bin der Meinung das die Initialisierung des Wertes das ursprüngliche Objekt überschrieben wird.


  • Mod

    Von040Nach0711 schrieb:

    ...in dem Doctemplae Deinen Dokuement-Klassennamen angegeben?

    Nein, aber macht das was in diesem Fall? Ich bin der Meinung das die Initialisierung des Wertes das ursprüngliche Objekt überschrieben wird.

    Im Doctemplate steht doch welche Frameklasse er erzeugen soll, wenn dort nicht Deine Klasse steht, wird er die dort stehende Klasse erzeugen!

    Wie erzeugst Du denn das Doctemplate und wie verwendest Du es?


Log in to reply