BringToFront Problem - Program in der Taskleiste blinkt nur
Hi,
mit folgendem Code habe ich verwendet um mein Programm in den Vordergrund zu bringen, egal ob versteckt hinter anderen Windowsfenstern oder minimiert. Alle 10 Sekunden wird kontrolliert, ob es im Vordergrund ist (Timer).
Delphi-Quellcode:
Nur wenn das Fenster minimiert war, kamm es in den Vordergrund. War es aber hinter anderen Fenstern versteckt, blinke nur der Taskleisteneintrag und nichts weiter passierte.
Application.Restore;
Application.BringToFront; frm_main.BringToFront; Erst nachdem ich unten stehenden Code eingefügt habe, hat es funktioniert.
Delphi-Quellcode:
Kann mir einer Erklären warum? Ein Nachteil hat es aber noch. Der Taskleisteneintrag blinkt.
frm_main.FormStyle := fsStayOnTop; // Damit es absolute in den Vordergrund kommt und nicht nur in der Taskleiste blinkt
frm_main.FormStyle := fsNormal; Vielen Dank im Voraus. Sven |
Re: BringToFront Problem - Program in der Taskleiste blinkt
Hallo,
nimm BringWindowToTop(MainForm.Handle) (unit Windows) Heiko |
Re: BringToFront Problem - Program in der Taskleiste blinkt
Sorry gleicher Effekt (Blinken in der Taskleiste).
Mein verwendeter Code mit deinem zusammen:
Delphi-Quellcode:
Application.Restore;
Application.BringToFront; frm_main.BringToFront; BringWindowToTop(frm_main.Handle); // Hatte auch BringWindowToTop(Application.MainFormHandle) und BringWindowToTop(Application.MainForm.Handle) probiert ??? |
Re: BringToFront Problem - Program in der Taskleiste blinkt
|
Re: BringToFront Problem - Program in der Taskleiste blinkt
Hi Sven,
teste mal
Delphi-Quellcode:
if GetForeGroundWindow() <> Form1.Handle then
|
Re: BringToFront Problem - Program in der Taskleiste blinkt
Folgendes habe ich probiert:
Delphi-Quellcode:
if GetForeGroundWindow() <> frm_main.Handle then
ShowMessage('GetForeGroundWindow() <> frm_main.Handle') // Tritt auf wenn das Fenster versteckt (=inaktiv) ist und es nur blinkt in der Taskleiste else ShowMessage('GetForeGroundWindow() = frm_main.Handle') // Tritt auf das Fenster zu sehen ist und aktiv end; |
Re: BringToFront Problem - Program in der Taskleiste blinkt
Zitat:
|
Re: BringToFront Problem - Program in der Taskleiste blinkt
Meine MainForm kommt nicht in den Vordergrund. Nur wenn es minimiert ist. Was mich auch nicht ganz klar ist, was ich damit anfangen soll., d.h. was ich genau in die Abfrage hinein schreiben soll. Sorry.
|
Re: BringToFront Problem - Program in der Taskleiste blinkt
Hast du ForceForegroundWindow probiert??
|
Re: BringToFront Problem - Program in der Taskleiste blinkt
Nein leider noch nicht. Kann ich erst heute Abend probieren. Mal sehen was da raus kommt. Vielen Dank erstmal und ich melde mich heute Abend denn.
Gruß, Sven |
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:20 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz