Strg-/Alt-/Shift-Taste bzw. Shift-/Control |
|
| System | Win9x, WinNT, Win2000, WinXP, Vista, Win7 |
|---|---|
| Ab Delphi-Version | Delphi 1 |
| Letzte Änderung | 28.09.2010 |
Wie kann ich prüfen, ob eine der oben genannten Tasten gedrückt wurde?Dazu gibt's mehrere Möglichkeiten. Die Nachfolgende bevorzuge ich für ein OnClick auf eine beliebige Komponente:
function KeyPressed(Key: Integer): Boolean;
// für Shift=vk_shift, für Control=vk_control, für Alt=vk_menu
begin
KeyPressed := (GetAsyncKeyState(Key) and $8000 <> 0);
end;
// für Shift=vk_shift, für Control=vk_control, für Alt=vk_menu
begin
KeyPressed := (GetAsyncKeyState(Key) and $8000 <> 0);
end;
Die obige Funktion (oder Unit) müssen Sie in Ihr Programm einbinden.
procedure TForm1.Button1Click(Sender: TObject);
begin
if KeyPressed(vk_shift) then
edit1.text:='Shift+Button1'
else if KeyPressed(vk_control) then
edit1.text:='Control+Button1'
else if KeyPressed(vk_menu) then edit1.text:='Alt+Button1'
else
edit1.text:='Button1';
end;
Ähnliche Seiten:
- Text im StringGrid ausrichten
- StringGrid Text vertikal ausgeben
- Programme in den Autostart schreiben
- Anwendung im SysTray anzeigen
- Animation zum Systemtray
- Schaltfläche in der Taskbar ausblenden
- Datei in einen String laden
- Endet ein String mit einem Backslash/Slash?
- Strings in einem Bitmap ausgeben
- String in der Tag-Eigenschaft speichern