2 Views - Zugriff Probleme
-
Hallo!
Ich hab hier eine MDI Anwendung die 2 Views mit CSplitterWnd geteilt ist.
In der einen View (links) ist ein TreeControl mit den man die rechte View steuern soll.
Nun mein Problem, wie kann ich von dieser Funktion aus CLeftView::OnSelchangedTree auf CRightView zugreifen das ich dort den passenden Dialog anzeigen lassen kann?
Was gibts da für Möglichkeiten?
Könnte man da was mit SendMessage machen ?
Was für Alternativen gibt es ?thx derweil!
-
Dazu benutzt man das gemeinsame CDocument-Objekt, und zwar die Funktion UpdateAllViews
-
ähm so hab ich das nicht gemeint...
Das Dokument wird ja nicht verändert.
Ich will ja nur das in dem 2. View der Dialog gewechselt wird wenn ich im Tree Control irgendwas aus dem Baum anwähle...
So wie es zum Beispiel mit einem Tab Control wunderbar funktioniert.
Nur das bei mir der Tree die Tabs sind und Tree und Dialog in getrennten Views!
-
Parameter, die in mehreren Views benötigt werden, schreibt man in eine Klasse, auf die man von beiden zugreifen kann. Das wäre bei Dir CDocument!
Links selektierst Du ein Item (Pfad), definierst im CDoc-Header eine Konstante HINT_UPDATE_PATH und rufst dann pDoc->UpdateAllViews( this, HINT_UPDATE_PATH, strPath) auf, wobei strPath der Pfad ist, den Du im TreeView selektiert hast!
Danach wird im CRightView OnUpdate aufgerufen und alle sind zufrieden, ohne dass CLeftView wissen muss, dass CRightView überhaupt existiert![ Dieser Beitrag wurde am 06.11.2002 um 16:50 Uhr von RenéG editiert. ]
-
Fein! So mach ich das mal!
Danke!