Re: Problem beim Focus setzen nach erstellen eines forms
Liste der Anhänge anzeigen (Anzahl: 1)
ich werde mich gleich daran machen und es mit source uploaden
EDIT: Wie versprochen das Testproject, es tritt auch der selbe fehler auf! |
Re: Problem beim Focus setzen nach erstellen eines forms
Hallo,
Du hast in Deinem Quelltext zweimal Form9.Show, aber nur einmal Application.BringToFront. Verlagere das Form9.Show und Application.BringToFront so, dass es in dem entsprechenden Else-Zweig immer durchlaufen wird. Damit sollte es dann funktionieren.
Delphi-Quellcode:
if seh then begin
application.Minimize; for I := 0 to screen.formcount - 1 do begin screen.forms[i].hide; end; seh := false; end else begin if sperr then begin if not s8 then begin s8 := true; Application.CreateForm(TForm9, Form9); end; end else begin for I := screen.formcount -1 downto 0 do begin screen.forms[i].show end; seh := true; end; form9.show; application.BringToFront; end; |
Re: Problem beim Focus setzen nach erstellen eines forms
wow super die lösung war total einfach :wall:
war echt blind ... habs mir echt komplizierter vorgestellt vielen dank für eure hilfe funktioniert super :thumb: |
Re: Problem beim Focus setzen nach erstellen eines forms
Hallo,
ich habe ein ähnliches Problem und wollte daher kein neues Thema aufmachen. Die Suche hat mir bislang auch keine Antwort beschert. Mein Programm besteht aus einem Form, mit den Eigenschaften BorderStyle:=byNone; und FormStyle:=fsStayOnTop;. Weiterhin existiert keinerlei Anzeige in der Taskleiste mittels
Delphi-Quellcode:
Es wird durch ein weiteres externes Programm aufgerufen und soll lediglich als eine Art Hinweisfenster kommen; allerdings mit einer Menge Interaktionsmöglichkeiten für den Benutzer. Das klappt soweit auch gut.
SetWindowLong(Application.Handle,GWL_EXSTYLE,
GetWindowLong(Application.Handle,GWL_EXSTYLE) Or WS_EX_TOOLWINDOW And Not WS_EX_APPWINDOW); Allerdings möchte ich es gern auch mit der Tastatur bedienen können. Wird mein Programm eingeblendet, hat es aber nicht den Focus. Ich muss also erst mit der Maus auf das Fenster klicken und kann es dann - wie gewünscht - mit der Tastatur bedienen. :gruebel: Ich habe schon probiert, im Ereignis OnShow den Befehl Application.BringToFront; ausführen zu lassen. Das hat es nicht gebracht. Wie kann ich es schaffen, dass das ohne den "goldenen Klick" :-D geht? Gruß und Dank, Alex |
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:04 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