Position von nicht Modalen Dialogen rausfinden und setzen

Thopeto

Erfahrenes Mitglied
Hallo

Ich habe mehrere NichtModal Dialoge. Nun möchte ich wenn der Benutzer die Andwendnugn beendet, die Position des Dialog bekommen und wenn der Benutzer die Anwendung startet, solle n die Dialoge genau da wieder sein, wo sie zuletzt gewesen sind.

Wie find ich das raus?!

Gruß
Thorsten
 
Mit GetWindowRect bekommst du die Position. Ich empfehle allerdings GetWindowPlacement. Das ist noch ausgereifter und merkt sich auf maximiert/minimiert und deren Grössen.

In dem Struct, dass du an GetWindowPlacement übergibst, musst du die Grösse des Struct drin setzen. Dann einfach die Structs speichern und beim Reinladen mit SetWindowPlacement die Fenster positionieren.
 
Ich hab jetzt zwar die Kooradinaten, aber ich kriege das nicht gebacken, beim Start den Dialog auch zu den Koordinaten zu bewegen

Code:
RECT rcDlg;
 		WINDOWPLACEMENT wp;
 		wp.length = sizeof(wp);
 		GetWindowPlacement(&wp);
 
 		rcDlg.left   = (long)theApp.m_svSettings.iPosL;
 		rcDlg.top	= (long)theApp.m_svSettings.iPosT;
 		rcDlg.right  = (long)theApp.m_svSettings.iPosR;
 		rcDlg.bottom = (long)theApp.m_svSettings.iPosB;
 
 		wp.rcNormalPosition = rcDlg;
 
 		SetWindowPlacement(&wp);

das steht bei mir im InitDialog

gruß
Thorsten
 
Zurück