Auf Dialogelemente zugreifen



  • Ich hab einen MFC Dialog mit einigen Edit-Controls erstellt.
    Wie kann ich von einer anderen Klasse aus auf die Edit-Controls zugreifen??

    Hab schon probiert

    GuiDlg gui = new GuiDlg();
    gui.GetDlgItem(IDC_EDIT)->setWindowText....
    

    das funktioniert so aber nicht.

    Der Konstruktor sieht so aus

    CGuiDlg::CGuiDlg(CWnd* pParent /*=NULL*/)
    	: CDialog(CGuiDlg::IDD, pParent)
    	, state(_T(""))
    	, message(_T(""))
    {
    	m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);
    }
    


  • Du solltest Dir Grundlagen über Klassen zulegen.

    Du kannst bei deinem Code nicht auf eine Steuerelement zugreifen wenn der Dialog nicht existiert.
    Sollte der Dialog existieren braucht du einen Zeiger auf seine Klasse und kannst dann auch auf alle member zugreifen.



  • Was heißt "funktioniert nicht"? Wenn du deinen Dialog über new anlegen willst, brauchst du Pointer - wir sind hier schließlich nicht bei Java. Und außerdem hat der neu angelegte CGuiDlg vermutlich gar nichts mit deinem bereits existierenden Fenster zu tun.


Anmelden zum Antworten