SDI: umschalten zwischen mehreren Ansichten (mit Splittern)?
-
Hi,
Ich habe eine SDI-Anwendung, wie in Fig. 1:
_______________
|..........|...................|
|View..| ..................|
|Tree...|..ViewList...| -->(fig. 1)
|..........|................. |
|..........|..................|
||____|Nun versuche ich eine weitere Ansicht zu realisieren, so dass den zwei Ansichten hin und her umschalten kann. Die erste Ansicht (Fig. 1) ist meine Standard-Ansicht. Die zwiete Ansicht nenne ich MAX-Ansicht, und sie soll wie folgt aussehen (Fig. 2):
_____________________
|..........| ......View 2...........|
|..........||
|..........|.........|.................. |
|...V1..|..........|...................|
|..........|..V3...|..View 4......| -->(fig. 2)
|..........|..........|..................|
|..........|..........|..................|
|||_____|Die Frage ist nun, wie kann ich in meiner SDI zwischen den beiden Ansichten (über die Menü) wechseln?
Mir gehts erstmal darum, zwischen mehreren Views umschalten zu können. Also die MAX-Ansicht kann für die erste Version auch wie in Fig. 3 aussehen (keine verschachtelten Splitter)
________________
|V 1.....| view2........|
|||
|View..|...................| --> (fig. 3)
| ..3.....|.View 4..... |
|..........|..................|
|..........|..................|
||________|Die Standard-Ansicht habe ich durch die OnCreateClient() Funktion wie folgt realisiert:
////////////////////////////////////////////////////////////////////////////////////////// // CMainFrame message handlers BOOL CMainFrame::OnCreateClient(LPCREATESTRUCT lpcs, CCreateContext* pContext) { // Wenn Matrix aktiviert ist, dann ueberpruefe diesen Bereich auf Kommunalitat // may want to read Q99562 and Q141334 if (!m_wndSplitter.CreateStatic(this,1,2)) { return FALSE; } //m_wndSplitterDyn.Create(&m_wndSplitter, 2, 1, CSize ( 1, 1 ), pContext ) ; CRect rect; GetClientRect(&rect); CSize sizeTree = rect.Size(); sizeTree.cx = rect.Width()/4; if (!m_wndSplitter.CreateView(PANE_ROW_ZERO, eTreeWinPane, RUNTIME_CLASS(CViewTree), sizeTree, pContext)|| (!m_wndSplitter.CreateView(PANE_ROW_ZERO, eListWinPane, RUNTIME_CLASS(CViewList), /*CSize(0,0)*/CSize(100,100), pContext))) { return FALSE; } return TRUE; //return CFrameWnd::OnCreateClient(lpcs, pContext); } ///////////////////////////////////////////////////////////////////////////////////////////Gibts Alternative zur OnCreateClient() Funktion?
Ich bin unter Zeitdruck; hat jemand eine Idee, wie ich weiter kommen kann?
DANKE im Voraus..
-
Falsches Forum!
Frag bei den MFClern.
-
Dieser Thread wurde von Moderator/in HumeSikkins aus dem Forum C++ in das Forum MFC mit dem Visual C++ verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.
-
Hi Leute,
keine Antwort bis jetzt
Ist die Frage nicht verstänlich, oder ganz doof?Bitte, wenn Jemand einen Tipp hätte, dann wäre ich sehr dankbar..
nadin_sam