Einzelnen Beitrag anzeigen

Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.117 Beiträge
 
Delphi 11 Alexandria
 
#10

Re: Befehle an eine andere Anwendung versenden

  Alt 4. Dez 2004, 03:18
Moin The-X,

mit der API Funktion GetGUIThreadInfo kann man direkt das Handle des Fenster ermitteln, dass zum einen den Keyboardfokus, und zum anderen das Caret beinhaltet, also ein Eingabefeld ist.

Z.B. so:

Delphi-Quellcode:
var
  gtiWork : TGUITHREADINFO;

 
      if not GetGUIThreadInfo(0,gtiWork) then exit;
      if (gtiWork.flags and GUI_CARETBLINKING) = 0 then exit; // Kein Caret => Kein Eingabefeld
      if (gtiWork.hwndCaret = INVALID_HANDLE_VALUE) or // Kein Caret => Kein Eingabefeld
         (gtiWork.hwndCaret = 0) or // " "
         (gtiWork.hwndCaret <> gtiWork.hwndFocus) then exit; // Fenster mit Caret hat nicht den Fokus
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat