Einzelnen Beitrag anzeigen

Schwedenbitter

Registriert seit: 22. Mär 2003
Ort: Finsterwalde
622 Beiträge
 
Turbo Delphi für Win32
 
#14

Re: Problem beim Focus setzen nach erstellen eines forms

  Alt 16. Mär 2009, 10:50
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:
SetWindowLong(Application.Handle,GWL_EXSTYLE,
              GetWindowLong(Application.Handle,GWL_EXSTYLE) Or
              WS_EX_TOOLWINDOW And Not WS_EX_APPWINDOW);
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.

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. 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" geht?

Gruß und Dank, Alex
Alex Winzer
  Mit Zitat antworten Zitat