Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Ermitteln, ob während eines Key-Down Ctrl-Taste gedrückt ist (https://www.delphipraxis.net/92503-ermitteln-ob-waehrend-eines-key-down-ctrl-taste-gedrueckt-ist.html)

little-x 21. Mai 2007 12:14


Ermitteln, ob während eines Key-Down Ctrl-Taste gedrückt ist
 
Ich denke der Betreff sagt alles. Speziell soll ein Key-Down oder Key-Press Event sich im Verhalten danach richten, ob gleichzeitig die Ctrl-Taste gedrückt ist oder nicht.

Die Suche im Forum war leider erfolglos. Key-Events auslösen, da findet man ja einiges. Nur eben andersrum, ermitteln ob eine bestimmte Taste gerade gedrückt wird, ist irgendwie Ebbe. Ich kann mir vorstellen dass das ganz unkompliziert ist und irgendwo (delphi-Hilfe, hier im Forum) steht, nur weiß ich nicht so recht wonach ich suchen soll.

mkinzler 21. Mai 2007 12:16

Re: Ermitteln, ob während eines Key-Down Ctrl-Taste gedrückt
 
Kannst du im Parameter Shift auslesen.

Luckie 21. Mai 2007 12:18

Re: Ermitteln, ob während eines Key-Down Ctrl-Taste gedrückt
 
Man könnte auch einfach mal in der Hilfe gucken:
Delphi-Quellcode:
type

  TKeyEvent = procedure (Sender: TObject; var Key: Word; Shift: TShiftState) of object;
Zitat:

Der Parameter Shift gibt an, ob auch die Tasten Umschalt, Alt oder Strg gedrückt wurden.

little-x 21. Mai 2007 12:57

Re: Ermitteln, ob während eines Key-Down Ctrl-Taste gedrückt
 
Also erstmal Dankeschön!

Dennoch kurz:

Zitat:

Man könnte auch einfach mal in der Hilfe gucken[...]
Siehe dazu mein Zitat:
Zitat:

[...]nur weiß ich nicht so recht wonach ich suchen soll.
Ich möchte damit sagen, nicht jedem kommt beim Feldnamen SHIFT die Idee dass es sich dabei nicht NUR um die Shift-Taste handelt, die da evaluiert wird. Sicher soll man beim Nutzen der Hilfe nicht engstirnig sein, aber irgendwo haben Variablenbezeichnungen nun einmal ihren Sinn und der um Effizienz und bemühte Suchende zieht dann eben seine Grenzen beim Beurteilen, ob sich da was hilfreiches für sein Problem verbergen könnte oder nicht. Wo diese Grenzen zu sehr einengen und beim Lösungsfinden blockieren, ist der Erfahrungsschatz anderer Entwickler wertvoll, wofür ich ja sehr dankbar bin und was letztlich sinngebend für solche Foren ist.

Muetze1 21. Mai 2007 15:36

Re: Ermitteln, ob während eines Key-Down Ctrl-Taste gedrückt
 
Zitat:

Zitat von little-x
Ich möchte damit sagen, nicht jedem kommt beim Feldnamen SHIFT die Idee dass es sich dabei nicht NUR um die Shift-Taste handelt, die da evaluiert wird. Sicher soll man beim Nutzen der Hilfe nicht engstirnig sein, aber irgendwo haben Variablenbezeichnungen nun einmal ihren Sinn und der um Effizienz und bemühte Suchende zieht dann eben seine Grenzen beim Beurteilen, ob sich da was hilfreiches für sein Problem verbergen könnte oder nicht. Wo diese Grenzen zu sehr einengen und beim Lösungsfinden blockieren, ist der Erfahrungsschatz anderer Entwickler wertvoll, wofür ich ja sehr dankbar bin und was letztlich sinngebend für solche Foren ist.

Da stimme ich dir zu, aber mich hätte es dann im gleichen Gedankenstrom gewundert, warum es ein Typ TShitState ist und kein Boolean und sofort auf den kleinen Link geklickt, um mir TShiftState anzuschauen. Schliesslich ist man eh gerade mal da...

Aber man lernt halt nie aus - egal um was es geht...

dominikkv 21. Mai 2007 15:49

Re: Ermitteln, ob während eines Key-Down Ctrl-Taste gedrückt
 
Zitat:

Zitat von Muetze1
... ein Typ TShitState ist ...

:gruebel:

Muetze1 21. Mai 2007 18:01

Re: Ermitteln, ob während eines Key-Down Ctrl-Taste gedrückt
 
Haltet den Dieb - er hat mein "F" geklaut. Naja, zum Glück habe ich noch das große F - da Fällt das Fehlende kleine F nicht so auF.

Luckie 21. Mai 2007 21:15

Re: Ermitteln, ob während eines Key-Down Ctrl-Taste gedrückt
 
@little-x: Was heißt, du weißt nocht, wo du suchen sollst? Du hast doch schon die entsprechenden Ereignisse gefunden, was liegt da so fern, diese mal in der Hilfe nachzuschlagen und dann mal auf den weiteren Verweis von TShiftState zu klicken?


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:18 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