Einzelnen Beitrag anzeigen

TucTuc

Registriert seit: 20. Dez 2008
18 Beiträge
 
#16

AW: Tastenbestätigung in Delphi

  Alt 23. Jun 2010, 13:03
So es funktioniert ich war nur zu doof bzw. zu schwer von kapische...
Wie auch immer nocheinmal zusammengefasst für all die aderen die was ähnliches versuchen:

-Ziel war eine "Unsichtbare Tastenabfrage"

-Man klickt auf das Formular, so das es den Fokus hat
links im Objektinspektor müssten nun die Eigenschaften von TForm1 oder wie ihr es auch immer genannt habt stehen
=> dort klickt ihr auf Ereignisse/Aktions je nach Delphiversion und scrollt ein Stück herunter:

Dort findet ihr:

OnKeyDown Taste := wurde runter gedrückt
OnKeyPress Taste := wird gedrückt gehalten
OnKeyUP Taste := wird losgelassen

OnKeyPress hat als Wertebereich lediglich ein paar Asci-codes und unterscheidet dementsprechen auch nicht das Num_Pad von den Zahlen über den Buchstaben für meine Zwecke zu wenig verschiedene Tasten...

OnKeyUp und Down haben den selben Wertebereich und können im Prinzip jede Taste der Tastatur unterscheiden

einfach neben eins der 3 Events doppelklicken und es wird automatisch eine Prozedur in der Unit erstellt und nun könnt ihr mit den Tastencodes aus der Hilfe spieln

kleiner Auszug:

Delphi-Quellcode:
procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
      turnscore := 0;
//Inner-Bull Ring1:
      if key = vk_end then label1.caption := 'end';
      if key = vk_delete then turnscore := 50;
//Outer-Bull Ring2:
      if key = vk_delete then turnscore := 25;
//innen-einfach Ring3:
      if key = vk_delete then turnscore := 1;
      if key = vk_delete then turnscore := 2;
      if key = vk_delete then turnscore := 3;
      if key = vk_delete then turnscore := 4;
      if key = vk_delete then turnscore := 5;
      if key = vk_delete then turnscore := 6;
      if key = vk_delete then turnscore := 7;
      if key = vk_delete then turnscore := 8;
      if key = vk_delete then turnscore := 9;
      if key = vk_delete then turnscore := 10;
      if key = vk_delete then turnscore := 11;
      if key = vk_delete then turnscore := 12;
      if key = vk_delete then turnscore := 13;
      if key = vk_delete then turnscore := 14;
      if key = vk_delete then turnscore := 15;
      if key = vk_delete then turnscore := 16;
      if key = vk_delete then turnscore := 17;
      if key = vk_delete then turnscore := 18;
      if key = vk_delete then turnscore := 19;
      if key = vk_delete then turnscore := 20;

wen wundert was das sein soll nach dem ich bei meinem letzten projekt 3 pics zerschossen habe habe ich mir überlegt das Funkmodul einer kaputten logitechtastatur zu missbrauchen meiner meinung nach einfach wie genial jeder ausgelesene wert wird zu einem buchstaben oder buchstabensalat und kann dann zurückübersetzt werden und das auch noch kabellos...

viel spaß damit hoffe ist ne anregung für andere

viele grüße

TucTuc

PS: ja ich weiss groß kleinschreibung und rechtschreibung aber das wir überbewertet

Geändert von TucTuc (23. Jun 2010 um 20:48 Uhr)
  Mit Zitat antworten Zitat