CSplitterWnd - Zeiger auf RUNTIME_CLASS



  • Hallo,

    ich hab schon die Suchen-Funktion in diesem Forum probiert, aber geholfen haben mir die Beiträge zu meinem Thema noch nicht.

    Folgendes Problem:
    Mein MDI Childfenster ist in zwei Views mit CSplitterWnd geteilt. LeftView und RightView genannt.

    Ich möchte nun aus meiner CMyDoc Klasse auf die Member von RightView zugreiffen.

    Aber wie bekomm ich da einen Zeiger auf diese Klassen wenn sie so initialisiert wird:
    m_wndSplitter.CreateView(0, 1, RUNTIME_CLASS(RightView), CSize(200, 200), pContext)

    RUNTIUME_CLASS gibt ja eine CRuntimeStruktur zurück und nicht eine Referenz oder Zeiger auf die eigentliche Klasse.

    Freu mich über alle Tipps!

    ciao



  • m_wndSplitter ist ja von CSplitterWnd

    da gibt CView* GetPane(int) ?? als Member Funktion

    weiß nicht genau wie das heißt mußte mal nachschauen.
    das m_wndSplitter kannst du ja public machen und von der Doc aus kan man ja auf das child zugreifen.



  • ich hab mal nachgeschaut

    CWnd* GetPane(int row, int col) const;



  • Nein, nein, nein
    Ich weiss nicht, waren es nun 10 oder 20 Antworten, die ich schon gegeben habe, dass man nunmal NICHT vom Doc auf irgendein View zugreift sondern nur vom View auf das Doc!



  • Hallo,

    es funktioniert doch!

    verstößt vielleicht gegen die eine oder andere Konvention 😉
    den Zeiger den man mit GetPane bekommt einfach als CRightView casten!

    Danke an Terminator!


Anmelden zum Antworten