Hi allerseits,
ich habe folgendes Problem. Ich möchte das meine SDI Applikation
bei einer bestimmten Aktion in der Vordergrund kommt sollte sie sich hinter anderen Fenster befinden. Dies habe ich versucht mit der Funktion SetForegroundWindow und auch mit SetActiveWindow.
Also ich starte meine Applikation und die Option ob das Fenster in den Vordergrund soll ist gesetzt.
Direkt nach dem Programmstart funktioniert das mit SetForegroundWindow wunderbar in allen getesten Windows Version (XP, Vista, W2K3).
Dann nehme ich im Anschluß die Option raus und teste dies. Geht auch.
Nun setze ich die Option wieder. Und unter XP und W2K3 blinkt die Applikation nur in der Taskleiste.
Nun habe ich in einem anderen Forum eine Lösung gefunden die ich ebenfalls ausprobiert habe.
Thread
Aber auch damit das gleiche Problem.
Es muss doch möglich sein die Applikation immer in den Vrodergrund zu holen wenn sie sich gerade im Hintergrund befindet.
Ich habe es auch mit SetWindowPos probiert.
Das hat gar nicht geholfen.
Jemand noch ne Idee?
Gruß
Karsten
ich habe folgendes Problem. Ich möchte das meine SDI Applikation
bei einer bestimmten Aktion in der Vordergrund kommt sollte sie sich hinter anderen Fenster befinden. Dies habe ich versucht mit der Funktion SetForegroundWindow und auch mit SetActiveWindow.
Also ich starte meine Applikation und die Option ob das Fenster in den Vordergrund soll ist gesetzt.
Direkt nach dem Programmstart funktioniert das mit SetForegroundWindow wunderbar in allen getesten Windows Version (XP, Vista, W2K3).
Dann nehme ich im Anschluß die Option raus und teste dies. Geht auch.
Nun setze ich die Option wieder. Und unter XP und W2K3 blinkt die Applikation nur in der Taskleiste.
Nun habe ich in einem anderen Forum eine Lösung gefunden die ich ebenfalls ausprobiert habe.
Thread
Aber auch damit das gleiche Problem.
Es muss doch möglich sein die Applikation immer in den Vrodergrund zu holen wenn sie sich gerade im Hintergrund befindet.
Ich habe es auch mit SetWindowPos probiert.
Code:
//1.) this->SetWindowPos(&CWnd::wndTopMost, 0 ,0, 0, 0, SWP_SHOWWINDOW|SWP_NOREDRAW|SWP_NOSIZE|SWP_NOZORDER); //2.) this->SetWindowPos(&CWnd::wndTopMost, 0 ,0, 0, 0, SWP_SHOWWINDOW|SWP_NOREDRAW|SWP_NOSIZE); //3.) this->SetWindowPos(&CWnd::wndTopMost, 0 ,0, 0, 0, SWP_SHOWWINDOW);
Jemand noch ne Idee?
Gruß
Karsten
Comment