CListCtrl in OnInitDialog initialisieren schlägt fehl



  • Hallo,

    habe da ein Problem wenn ich einen selbsterstellten Dialog OnInitDialog aufrufe um mein Dialog zu initialisieren dann bekomme ich immer einen Absturz warum ?

    BOOL CRepairDlg::OnInitDialog()
    {
      m_ctrlOutputs.InsertColumn(0, (LPCTSTR)"Kanal1", LVCFMT_LEFT, 200);
      m_ctrlOutputs.InsertColumn(1, (LPCTSTR)"Kanal2", LVCFMT_LEFT, 200);
      return TRUE;
    }
    

    vielen Dank im Voraus



  • ist da der dialog überhaupt schon da? was sind das für member variablen.

    normalerweiße wird im oninit erst der dialog selbst erstellt
    und erst danach kannst du deine controls mit werten füllen.



  • ich rufe in einem anderen Dialog mit DoModal diesen 2 Dialog auf.

    void CRC3TestDlg::OnRepair()
    {
    CRepairDlg RepDlg;
    RepDlg.DoModal();
    }



  • ich habs habe vergessen:

    CDialog::OnInitDialog();
    
     // Hinzufügen des Menübefehls "Info..." zum Systemmenü.
    
     // IDM_ABOUTBOX muss sich im Bereich der Systembefehle befinden.
     ASSERT((IDM_ABOUTBOX & 0xFFF0) == IDM_ABOUTBOX);
     ASSERT(IDM_ABOUTBOX < 0xF000);
    
     CMenu* pSysMenu = GetSystemMenu(FALSE);
     if (pSysMenu != NULL)
     {
      CString strAboutMenu;
      strAboutMenu.LoadString(IDS_ABOUTBOX);
      if (!strAboutMenu.IsEmpty())
      {	
       pSysMenu->AppendMenu(MF_SEPARATOR);
       pSysMenu->AppendMenu(MF_STRING, IDM_ABOUTBOX, strAboutMenu);
      }
     }
    

    aufzurufen



  • Du brauchts nur CDialog:OnInit,das andere ist nur für den Aboutdialog.


Anmelden zum Antworten