| Autor |
Beitrag |
schitho
      
Beiträge: 288
XP Home SP2
D2005 Prof
|
Verfasst: Mo 09.06.03 20:58
Hi,
was muss ich machen, damit ein Fenster immer im Vordergrund bleibt, auch wenn jemand ein anderes Fenster oder eine andere Applikation anklickt. Das Fenster soll also immer im Vordergrund angezeigt werden. Es muss aber nicht immer aktiviert sein.
Mit fsStayOnTop hat es leider nicht funktioniert.
Danke für Eure Hilfe
_________________ (Sorry! Leider ewiger Delphi-Neuling)
|
|
Terra23
      
Beiträge: 872
Win 8
Delphi 7
|
Verfasst: Di 10.06.03 15:47
GetForegroundWindow?
_________________ Hasta La Victoria Siempre
|
|
schitho 
      
Beiträge: 288
XP Home SP2
D2005 Prof
|
Verfasst: Di 10.06.03 16:10
Hi,
mit GetForegroundWindow wird das aktive Top-Level-Fenster ermittelt, oder?
Ich suche aber eine Möglichkeit mein Fenster immer im Vordergrund (auch vor anderen Applikationen) zu halten. Dabei muss es aber nicht aktiv sein.
Oder gibt es zumindest die Möglichkeit, dass man den Eintrag in der Task-Leiste blinken lassen kann, wenn das Fenster sich nicht im Vordergrund befindet, also nicht aktiv ist???
Bin für jeden Hinweis dankbar.
_________________ (Sorry! Leider ewiger Delphi-Neuling)
|
|
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Di 10.06.03 16:23
Schon die Suche gefunden? Nein? Dann wird es aber Zeit.
|
|
schitho 
      
Beiträge: 288
XP Home SP2
D2005 Prof
|
Verfasst: Di 10.06.03 16:44
Hallo Lucki,
| Luckie hat folgendes geschrieben: | | Schon die Suche gefunden? Nein? Dann wird es aber Zeit. |
die Suche hab ich schon gefunden. Aber scheinbar bin ich zu blöd  , denn eine passende und funktionierende Antwort hab ich zu meiner Frage nicht gefunden. 
_________________ (Sorry! Leider ewiger Delphi-Neuling)
|
|
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Di 10.06.03 16:49
So nichts gefunden?
www.delphi-forum.de/...=fenster+vordergrund
Kuck mal, wie der Thread heißt. 
|
|
schitho 
      
Beiträge: 288
XP Home SP2
D2005 Prof
|
Verfasst: Di 10.06.03 17:43
Hallo Lucki
Nicht gleich böse sein
Hab den Thread eh gelesen. Nur SetWindowPos(Form.Handle, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOMOVE or SWP_NOSIZE) funktioniert auch nicht. Ich hab folgenden Code verwendet:
Quelltext 1: 2: 3:
| FormWeckdienst:=TFormWeckdienst.Create(Application); FormWeckdienst.Show; SetWindowPos(FormWeckdienst.Handle, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOMOVE or SWP_NOSIZE); |
Sobald ich auf ein anderes Fenster klicke ist mein Fenster im Hintergrund.
Was mach ich also falsch? 
_________________ (Sorry! Leider ewiger Delphi-Neuling)
|
|
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Di 10.06.03 17:48
Kann ich mir nicht vorstellen. Bei einem Hauptfenster geht es immer wunderbar.
|
|
schitho 
      
Beiträge: 288
XP Home SP2
D2005 Prof
|
Verfasst: Di 10.06.03 17:57
Was verstehst Du unter Hauptfenster?
Als es gibt mehrere Fenster. Das Programm startet mit einem Fenster (FormGoAway).
Das Fenster FormWeckdienst wird durch ein Timer-Ereignis angezeigt (so wie oben dargestellt). Und es bleibt dann leider nicht immer im Vordergrund.
Oder funktioniert SetWindowPos nur mit FormGoAway?
_________________ (Sorry! Leider ewiger Delphi-Neuling)
|
|
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Di 10.06.03 18:00
Das Hauptfenster ist das erste Fenster, was erzeugt wird.
|
|
schitho 
      
Beiträge: 288
XP Home SP2
D2005 Prof
|
Verfasst: Di 10.06.03 18:09
Aha! Es funktioniert also nur mit dem Hauptfenster.
Hab es daher nun so probiert:
Quelltext 1: 2: 3:
| SetWindowPos(FormGoAway.Handle, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOMOVE or SWP_NOSIZE); FormWeckdienst:=TFormWeckdienst.Create(Application); FormWeckdienst.Show; |
Folge: Sobald ich ein anderes Fenster anklicke bleibt meine Applikation im Vordergrund. Allerdings das falsche Fenster. Mein Fenster FormWeckdienst sollte eigentlich immer im Vordergrund sein und nicht das Hauptfenster.
Hast Du vielleicht auch dafür eine Lösung?
Danke!
_________________ (Sorry! Leider ewiger Delphi-Neuling)
|
|