Membervariable der Mutterklasse mit der Kindklasse updaten
-
Hallo ihr netten Leute vom Forum...
ich bin gerade an einem kleinen dialogbasiertem Programm am coden und stoße dabei auf einige Probleme.
Eines dieser Probleme habe ich im Titel schon versucht zum Ausdruck zu bringen.
Es geht darum das ich eine abgeleitete Klasse von CDialog namens CMainDlg hab.
Wenn man nun auf einen Button klickt öffnet sich ein neues Fenster (CEinstellungenDlg) das von CMainDlg abgeleitet ist. Das Funktioniert auch ohne Probleme.
Nur ist es so, dass ich von dem neuen Fenster gerne Daten in das CMainDlg bekommen muss. Mit globalen Variablen ist das ja kein Thema, nur möchte ich wenn's geht darauf verzichten.Vielen dank schon mal für eure Antworten *verbeug*
-
Warum wird der Einstellungs Dialog von Deinem MainDlg abgeleitet?
Gib dem neuen Dialog einen Zeiger auf Deinen MainDlg mit.
Dazu änderst Du den Konstruktor, dass er auch einen entsprechenden Zeiger akzeptiert.CEinstellungenDlg::CEinstellungenDlg(CMainDlg *pDlg,CWnd* pParent) : m_pMainDlg(pDlg) , CDialog(CEinstellungenDlg::IDD,pParent) ...und dann rufst Du den entsprechendne Einstellungsdialog auf:
CEinstellungenDlg dlg(this,this); dlg.DoModal();
-
Ja klar, natürlich.
Wie dumm von mir das ich nicht daran gedacht hab' den Konstruktor sinnvoll zu nutzen.Vielen dank!