Dringend!! CSplitterWnd -> Assert



  • Hallo und frohes neues Jahr!

    Ich verzweifele langsam mit dem u.a. Code jedesmal wenn
    ich versuche ein zweigeteiltes Fenster zu erstellen
    bekomme ich ein Assert warum???? 😡 😡

    BOOL CMainFrame::OnCreateClient(LPCREATESTRUCT /*lpcs*/,
    	CCreateContext* pContext)
    {
     split1.CreateStatic(this,0,1); 
    
     split1.CreateView (0,0,RUNTIME_CLASS(CTest),CSize(0,0),pContext);
    
     split1.CreateView (0,1,RUNTIME_CLASS(CdemoView),CSize(0,0),pContext);
    
     return true;
    }
    


  • 3 Theorien:

    THEORIE 1:
    CreateStatic erwartet die Anzahl der Rows und Cols (bei zwei Fenstern sollte ein Wert 1 und der andere 2 sein)

    THEORIE 2:
    CTest ist bei dir nicht von CView abgeleitet

    THEORIE 3:
    Die CSize-Werte sollten beide jeweils größer als 0 sein

    (Könnte mich bei einigen Punkten irren)



  • Hallo und danke danke danke!! 👍 👍 👍

    Problem lag bei Nr. 1

    das Problem war diese Zeile

    split1.CreateStatic(this,0,1);
    

    so ist es richtig!

    BOOL CMainFrame::OnCreateClient(LPCREATESTRUCT /*lpcs*/,
    	CCreateContext* pContext)
    {
     split1.CreateStatic(this,1,2); // <-<-<-<-< Korrektur!!!!
    
     split1.CreateView (0,0,RUNTIME_CLASS(CTest),CSize(0,0),pContext);
    
     split1.CreateView (0,1,RUNTIME_CLASS(CdemoView),CSize(0,0),pContext);
    
     return true;
    }
    


  • Schön!


Anmelden zum Antworten