Variablen Inhalt von Application.ccp -> ApplicationView.ccp
-
Sorry, kann dir da leider nicht ganz folgen. Könntest du das ein bisschen genauer beschreiben, damit ich funktionsweise verstehe?
Vielen Dank
-
Schau mal ins Artikelforum, da gibts was dazu.

-
Ok danke, werde ich machen!
-
denk daran das es public variablen im normal Fall nicht "gibt"
Man nutzt Getter und Setter 
-
Das habe ich schon gelernt und werd das auch nicht mehr ohne machen. Get und Set ist schon sehr sinnvoll, vor allem wenn man das verstanden hat.

-
Sorry Jungs, ich komme im Moment wirklich nicht weiter.
Die Variable vom Eingabefeld des Dialoges befindet sich in einer eigenen Klasse, nenen wir sie mal Dialog. Die Variable möchte ich unter CApplicationView weiterverwenden, so mir fehlt nur ein kleiner Ansatz. Sitze voll auf der Leitung und komme keinen mm vorwärts.
Wäre nett, wenn sich einer mir annimmt.

-
Ist der Dialog modal? (Machst du ihn mit DoModal auf)
Von wo aus rufst du ihn auf? Zeig mal die Codestelle.
-
/// APPLICATION.CPP ///
class CStartDlg : public CDialog { public: CStartDlg(); // Dialogfelddaten enum { IDD = IDD_STARTSETUP }; protected: virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV-Unterstützung // Implementierung protected: DECLARE_MESSAGE_MAP() int m_start; public: afx_msg void OnEnChangeStart(); }; CStartDlg::CStartDlg() : CDialog(CStartDlg::IDD) ,m_start(0) { } void CStartDlg::DoDataExchange(CDataExchange* pDX) { CDialog::DoDataExchange(pDX); DDX_Text(pDX, IDC_START, m_start); } BEGIN_MESSAGE_MAP(CStartDlg, CDialog) ON_EN_CHANGE(IDC_START, &CStartDlg::OnEnChangeStart) END_MESSAGE_MAP() void CApplicationApp::OnSimStartSetup() { CStartDlg startsetupDlg; startsetupDlg.DoModal(); }Die Variable bzw. den Inhalt von m_start bräuchte ich in der CApplicationView

-
Ich übernehme mal deinen Code und erweitere:
void CApplicationApp::OnSimStartSetup() { CStartDlg startsetupDlg; startsetupDlg.DoModal(); TRACE("Die Variable ist: %d", startsetupDlg.m_start); // falls sie public wäre; so wie es jetzt ist, brauchst du nen Getter. }Ich denke mal, so kommst du weiter.

-
Hmm? er will es ja in de View haben... schreib doch einfach in deinem Dialog beim schließen ("WM_CLOSE" odg.) folgendes:
((CMyView*)(((CMainFrame*)(AfxGetMainWnd())->GetActiveView()))->SetBla(m_test);
-
Danke für euere Hilfe, ich hab leider noch nichts lauffähiges auf die Reihe gebracht. Ich sehe vermutlich den Wald vor lauter Bäumen nicht.

-
Leg in deiner View nen Setter für die von dir gewünschte Variable an... in meinem code hab ich den mal "SetBla" genannt... dann fügst du deinem Dialog eine OnClose oder einfach die Funktion durch die der Dialog geschloßen wird hinzu... und dort fügst du meinen code ein... wobei du darauf achten musst CMyView durch den namen deiner View Klasse zu ersetzen ... aja... poste sonnst mal deine fehlermeldung...