CSplitterWnd -> Debug Assert Error
-
Hallo,
ich möchte eine SDI Anwendung zunächst in 2 Bereiche unterteilen.
BOOL CMainFrame::OnCreateClient(LPCREATESTRUCT lpcs, CCreateContext* pContext) { // TODO: Fügen Sie hier Ihren spezialisierten Code ein, und/oder rufen Sie die Basisklasse auf. /************************************ +-------+------------------------+-------+ | | | | | S | | A | | O | | C | | L | | T | | U | IMAGE VIEW | I | | T | | O | | I | | N | | O | | | | N | | | | | | | +-------+------------------------+-------+ | | | CONSOLE | | | +----------------------------------------+ ************************************/ //Die Größe holen CRect cr; GetWindowRect( &cr ); //Zuerst das Fenster waagerecht teilen if ( ! m_horzSplitter.CreateStatic( this, 2, 1 ) ) { MessageBox( "Fehler beim Teilen des Fenster (horizontal)", "ERROR", MB_OK | MB_ICONERROR ); return FALSE; } // Die Views einfügen if ( !m_horzSplitter.CreateView( 0, 0, RUNTIME_CLASS(CSolutionView), CSize(cr.Width()/2, cr.Height()), pContext ) ) { MessageBox( "Error setting up splitter view", "ERROR", MB_OK | MB_ICONERROR ); return FALSE; } if ( !m_horzSplitter.CreateView( 0, 1, RUNTIME_CLASS(CImgView), CSize(cr.Width()/2, cr.Height()), pContext ) ) { MessageBox( "Error setting up splitter view", "ERROR", MB_OK | MB_ICONERROR ); return FALSE; } m_bSplitter = true; return true; //return CFrameWnd::OnCreateClient(lpcs, pContext); }
CImgView und CSolutionView sind jeweils von CFormView abgeleitete Klassen.
Kompilieren funktioniert ohne Probleme, aber beim ausführen erhalte ich folgenden Fehler:Debug Assertion Failed
File: Viewform.cpp
Line: 64Diese Meldung wird nach dem ersten CreateView-Befehl ausgelöst. Dieser gibt 0 zurück.