Lazarus IDE-Zustände / -Tasten abfragen

Für alles, was in den übrigen Lazarusthemen keinen Platz, aber mit Lazarus zutun hat.
Antworten
Benutzeravatar
kralle
Lazarusforum e. V.
Beiträge: 989
Registriert: Mi 17. Mär 2010, 14:50
OS, Lazarus, FPC: Linux Mint 20 , FPC 3.3.1 , Lazarus 2.1.0 -Win10 & XE7Pro
CPU-Target: 64Bit
Wohnort: Bremerhaven
Kontaktdaten:

Lazarus IDE-Zustände / -Tasten abfragen

Beitrag von kralle »

Moin,

kann ich in einer Anwendung feststellen, ob in Lazarus der Formular-Designer oder der Editor aktiv ist oder ob Lazarus im Debug-Modus aktiv ist?
Wenn das möglich ist, kann man durch eine Anwendung einen bestimmten Desktop (Werkzeuge / Destops ...) aktivieren?
Kann man Abfragen ob in der IDE die Taste F12 gedrückt wurde?

MfG
Heiko
OS: Manjaro Linux, Debian und Windows 10
FPC-Version: 3.2.2 , Lazarus 3.0
+ Delphi XE7SP1

Komoluna
Beiträge: 565
Registriert: So 26. Aug 2012, 09:03
OS, Lazarus, FPC: Windows(10), Linux(Arch)
CPU-Target: 64Bit

Re: Lazarus IDE-Zustände / -Tasten abfragen

Beitrag von Komoluna »

Tastenzustände kann man ganz einfach mit GetKeystate oder GetAsynchKeystate abfragen:

Code: Alles auswählen

GetKeyState(VK_F12)

Das Handle des aktiven Fensters lässt sich mit GetForegroundWindow und der Text des Fensters mit GetWindowText (beides aus der Unit Windows) herausfinden.

MFG

Komoluna
Programmer: A device to convert coffee into software.

Rekursion: siehe Rekursion.

Benutzeravatar
kralle
Lazarusforum e. V.
Beiträge: 989
Registriert: Mi 17. Mär 2010, 14:50
OS, Lazarus, FPC: Linux Mint 20 , FPC 3.3.1 , Lazarus 2.1.0 -Win10 & XE7Pro
CPU-Target: 64Bit
Wohnort: Bremerhaven
Kontaktdaten:

Re: Lazarus IDE-Zustände / -Tasten abfragen

Beitrag von kralle »

Moin,

Komoluna hat geschrieben:Tastenzustände kann man ganz einfach mit GetKeystate oder GetAsynchKeystate abfragen:

Code: Alles auswählen

GetKeyState(VK_F12)

Das Handle des aktiven Fensters lässt sich mit GetForegroundWindow und der Text des Fensters mit GetWindowText (beides aus der Unit Windows) herausfinden.

Das wäre dann doch aber eine "Windows Only "-Lösung - oder ?
Wenn ich das aber in die IDE einbinden möchte, muss die Lösung OS unabhängig laufen.

Gruß Heiko
OS: Manjaro Linux, Debian und Windows 10
FPC-Version: 3.2.2 , Lazarus 3.0
+ Delphi XE7SP1

soerensen3
Beiträge: 104
Registriert: Fr 22. Jun 2012, 01:51
OS, Lazarus, FPC: Fedora-Linux 23 (Korora) Lazarus 1.6 FPC 3.0
CPU-Target: 64Bit
Wohnort: Bonn

Re: Lazarus IDE-Zustände / -Tasten abfragen

Beitrag von soerensen3 »

Meinst du das?

Code: Alles auswählen

 
 if (csDesigning in ComponentState) then
   [...]
 

Antworten