Dialog in Pane eines CSplitterWnd integrieren/anzeigen
-
das kann doch nicht so schwer sein, aber ich komm da einfach nicht weiter....
also ich habe eine mdi-anwendung deren fenster ich in MainFrm mit 2x CSplitterWnd in 3 panes teile, in einem dieser Panes möchte ich einen Dialog (CDialog, nonmodal) anzeigen
bisher ist das Pane mit einem CView verknüpftif (!m_wndSplitterV.CreateView(1, 0, RUNTIME_CLASS(CPicView), CSize(100, 100), pContext)) //right pane { m_wndSplitterV.DestroyWindow(); return FALSE; }
Wie gehe ich am besten vor?
- MainFrm <- CSplitterWnd <- CView <- CDialog
oder
- MainFrm <- CSplitterWnd <- CDialoghab schon beide wege ausbrobiert, bekomms aber nicht hin
bin laut dieser anleitung vorgegangen:
http://www.cpp-tutor.de/mfc/mfc/kap8/lektion1.htm
aber dann wird der Dialog im oberen linken Eck des Hauptfensters angezeigt und nicht in meinem Pane.der aufruf des dialoges erfolgt mit:
int CPicView::OnCreate(LPCREATESTRUCT lpCreateStruct) { if (CView::OnCreate(lpCreateStruct) == -1) return -1; m_pCFinderDlg = new CFinderDlg(this); m_pCFinderDlg->Create(CFinderDlg::IDD); m_pCFinderDlg->ShowWindow(WS_CHILD); return 0; }
-
Nix CDialog... Nimm CFormView.
-
...und was ist mit sowas wie TabView's (CView) aus, wo ein CTabCtrl als Unterlage für einen Dialog dient?
müsste doch auch so was ähnliches (ohne die Register) als "Unterlage" für meinen CDialog geben, oder???
...oder ist das eben dieser CFormView???
-
Ich würde das CFormView soetwas wie einen Dialog beschreiben, aber mit Doc/View-Struktur. Falls ich falsch liege, soll mich bitte einer korrigieren.
Fakt ist, dass sich beide recht ähnlich sind, jedoch ein CFormView viel komfortabler ist. Toolbar, Menü,etc. schon meist integriert (jedenfalls bei einer SDI/MDI - Anwendung), wenn erwünscht.