Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Welche Taste hat welche Nummer???? (https://www.delphipraxis.net/3864-welche-taste-hat-welche-nummer.html)

Chriss 3. Apr 2003 14:36


Welche Taste hat welche Nummer????
 
Hi @ all!

vor längerer Zeit habe ich mal die Frage gestellt:
Wie mache ich das, wenn eine Taste gedrückt wird, dass keine Aktion folgt?!

Nun, mir wurde ein Quelltext gegeben, bei dem die Tasten mit Nummern versehen worden sind.
Meine Frage: Welche Taste hat welche nummer?
Hat die Taste oben links (ESC) die #1 und F1 die #2 oder wie soll ich das zählen!? Oder hat jemand von euch eine Liste, auf der die Tasten und die dazugehörigen Nummern stehen!?

Danke!!

Chriss

Pseudemys Nelsoni 3. Apr 2003 14:47

hi chriss,

mach dir doch einfach ein label auf eine form, und tu dies:

Delphi-Quellcode:
procedure TForm1.FormKeyPress(Sender: TObject; var Key: Char);
begin
  label1.Caption := '#' + IntToStr(Ord(key));
end;
in das Ereigniss "OnKeyPress" des Forms

gruss silent

Chriss 3. Apr 2003 14:52

ahhhh

VIELEN VIELEN DANK!!

das hilf weiter!!!

:coder:

zebrafalke 19. Jun 2006 21:08

Re: Welche Taste hat welche Nummer????
 
Hallo,
Das mit den normalen Tasten funktioniert so ja auch ganz gut, aber was ist mit der ALT-Taste???
Alle Tasten lassen sich irgentwie ansteuern, aber mit der Alt-Taste hab ichs noch nicht hingekriegt :wall:

Wie geht das?


gruß

Martin K 19. Jun 2006 21:15

Re: Welche Taste hat welche Nummer????
 
Hm..
Also ich hab das immer so gemacht, mit OnKeyDown:

Delphi-Quellcode:
procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  Label1.Caption := IntToStr(Key);
end;
Funktioniert auch bei der Alt-Taste.

Außerdem gibt es hier noch folgende Werte, die in Shift enthalten sein können:
Code:
ssShift  Die Taste Umschalt wird gedrückt gehalten.
ssAlt    Die Taste Alt wird gedrückt gehalten.
ssCtrl   Die Taste Strg wird gedrückt gehalten.
ssLeft   Die linke Maustaste wird gedrückt gehalten.
ssRight  Die rechte Maustaste wird gedrückt gehalten.
ssMiddle Die mittlere Maustaste wird gedrückt gehalten.
ssDouble Es wurde mit der Maus doppelgeklickt.

3_of_8 19. Jun 2006 21:16

Re: Welche Taste hat welche Nummer????
 
Alt, Strg, Umschalt, Entf usw. haben kein ASCII-Äquivalent, das heißt, sie erzeugen kein Zeichen. OnKeyPress fängt nur Zeichen ab (Ich nehme mal an, dass vor dem Auslösen dieses Events noch TranslateMessage ausgeführt wird).

Du brauchst OnKeyDown, dass mit virtuellen Tastencodes arbeitet:

Delphi-Quellcode:
procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
label1.Caption:=inttostr(key);
end;

zebrafalke 19. Jun 2006 21:22

Re: Welche Taste hat welche Nummer????
 
:wall: :wall: :wall: :wall: :wall: :wall: :wall:

aaaaaaaaahhh

Tschuldigung, ich meinte nicht die ALT-Taste! :duck:

Ich meinte die Windows-Taste, da sich da dann immer nur das Startmenü öffnet, was es aber nicht tun soll, sondern ich eine beliebige Aktion ausführen möchte....


sorry...ich war irgentwie verwirrt.... :coder2:

gruß

mkinzler 19. Jun 2006 21:24

Re: Welche Taste hat welche Nummer????
 
Die Windows-taste hat keinen eigenen Code, sondern ist [ALT} + [ESC]

Martin K 19. Jun 2006 21:39

Re: Welche Taste hat welche Nummer????
 
Du meinst wohl Strg+Esc :wink:

Mit Alt+Esc schaltest Du zwischen den Tabs her, so wie Alt+Tab nur das eben dieses kleine Fensterchen nicht sichtbar ist.

//Edit:
Aber ich glaube nicht, dass das die selbe Funktion wie mit der Windows-Taste ist.
Drücke mal [Windows-Taste]+L und sag mir dann wie das dann mit Strg+Esc gehen soll :gruebel:

mkinzler 19. Jun 2006 21:40

Re: Welche Taste hat welche Nummer????
 
Ich meinte natürlich [STRG] + [ESC].

zebrafalke 19. Jun 2006 21:41

Re: Welche Taste hat welche Nummer????
 
Also, ich hab das jetzt einfach mal mit 3_of_8's code ausprobiert, und dann zeigt er 91 an und öffnet das Startmenü....
Wie soll ich das verstehen, das die Windows-Taste ALT+STRG ist, und wie sag ich ihm dann schließlich, was er machen soll, wenn die Windows-Taste gedrückt wird?? :roteyes:

Martin K 19. Jun 2006 21:45

Re: Welche Taste hat welche Nummer????
 
Zitat:

Zitat von zebrafalke
Also, ich hab das jetzt einfach mal mit 3_of_8's code ausprobiert, und dann zeigt er 91 an und öffnet das Startmenü....

Ja, stimmt...
Die Windows-Taste scheint wohl doch ein extra Key zu sein, wie ich schon sagte:
Zitat:

Zitat von Martin K
Aber ich glaube nicht, dass das die selbe Funktion wie mit der Windows-Taste ist.
Drücke mal [Windows-Taste]+L und sag mir dann wie das dann mit Strg+Esc gehen soll :gruebel:

Zitat:

Zitat von zebrafalke
[...] und wie sag ich ihm dann schließlich, was er machen soll, wenn die Windows-Taste gedrückt wird?? :roteyes:

Das ist dann wohl die Frage aller Fragen...

3_of_8 19. Jun 2006 21:52

Re: Welche Taste hat welche Nummer????
 
Hab grad eben was bei den Schweizern gefunden: http://www.swissdelphicenter.ch/de/showcode.php?id=1212

r2c2 20. Jun 2006 07:23

Re: Welche Taste hat welche Nummer????
 
Die Fleißigen probieren aus, welche "Nummern" die einzelnen Tasten haben, die Faulen gucken nach: http://www.dsdt.info/grundlagen/codes/ :wink:

mfg

Christian

Sharky 20. Jun 2006 16:43

Re: Welche Taste hat welche Nummer????
 
Zitat:

Zitat von r2c2
... die Faulen gucken nach: ...

Aber sie gucken natürlich in der DP :stupid:

inherited 20. Jun 2006 17:47

Re: Welche Taste hat welche Nummer????
 
Die Faulen fragen in der DP und die Fleißigen antworten :mrgreen:
in der QBasic-Hilfe ist das alles sehr schön Dokumentiert, da ich aber seid 4 Jahren dieses nicht mehr benutze( :mrgreen: )kann ichs dir hier nicht sagen

P.S.: DREEEI ZUU NUUUHUUUL
=============
=============
=============

zebrafalke 20. Jun 2006 19:14

Re: Welche Taste hat welche Nummer????
 
So, ich habs jetzt so gemacht:

Delphi-Quellcode:
procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
If key=91 then machwas.....
end;
Jetzt kann ich ihn zwar irgentwas machen lassen, wenn Windows-Taste gedrückt wird, es öffnet sich aber immernoch das Startmenü und der Focus is weg. :twisted:

Wie kann ich das jetzt unterbinden?

3_of_8 20. Jun 2006 19:14

Re: Welche Taste hat welche Nummer????
 
Na lies doch mal meinen Beitrag durch:

Zitat:

Zitat von 3_of_8
Hab grad eben was bei den Schweizern gefunden: http://www.swissdelphicenter.ch/de/showcode.php?id=1212


inherited 20. Jun 2006 19:26

Re: Welche Taste hat welche Nummer????
 
Indem du einfach nochmal die Windowstaste drücken lässt^^


Alle Zeitangaben in WEZ +1. Es ist jetzt 21:27 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz