Dialogklasse mit View verknüpfen

Turcy

Grünschnabel
Hallo,
ich habe ein dringendes Problem. Ich habe eine MDI anwendung. Dort habe ich einen Dialogklasser mit einem slider. Wenn ich an dem Slider hin und her schiebe, möchte ich im View die Daten ausgeben. Ich bekomme aber im View immer ein 0. woran kann das liegen
 
Auf welches Ereignis reagierst du bzw. wie gibst du den Slider-Wert an den View?
 
Also ich habe mir einen menü erstellt. Wenn ich drauf klicke, wir mein Dialog sichtbar
( dialog.DoModal() ). In der Dialogklasse verändert sich der Wert, wenn ich mein Regler hin und her schiebe. Mein Ereignis ist OnReleasedcaptureSlider, wenn der Regler bewegt wird. In der Dialogklasse verändert sich auch der Wert. In View habe ich ein Instanz vor der Dialogklasse, um den Wert auszulesen. Aber in View bekomme ich immer ein 0. Was mache ich verkehrt

Code in der Dialogklasse:


Code:
void CHellDlg::OnReleasedcaptureSliderHelligkeit(NMHDR* pNMHDR, LRESULT* pResult) 
{
	UpdateData(true);
	b = m_Helligkeit;

	*pResult = 0;
}


Code in der Viewklasse:

Code:
        CHellDlg hellDlg;             //instanz von der Dialogklasse
	int sliderwer = hellDlg.b;  //Hier hole ich mir den Wert
 
Wenn du da lokal CHellDlg hinschreibst, hast du eine neue zweite Instanz angelegt. Da ist der Sliderwert b natürlich NULL. Du musst da schon den Wert von dem eigentlichen Dialog holen. D.h. du musst dir irgendwo den Zugriff zu dem Dialog ermöglichen.

Du erstellst ja irgendwo den CHellDlg bereits, von dort musst du dir den Pointer merken (wenn du das nicht schon tust).

Auf kurz: Du musst die in deinem View den Pointer auf die tatsächliche Dialog-Instanz holen. Du kannst dir den Pointer in der App merken oder per Funktion in den View übergeben.
 

Neue Beiträge

Zurück