AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Programm mit Tastatur steuern?

Ein Thema von AlexII · begonnen am 20. Feb 2009 · letzter Beitrag vom 21. Feb 2009
Antwort Antwort
Seite 2 von 3     12 3      
AlexII

Registriert seit: 28. Apr 2008
1.717 Beiträge
 
FreePascal / Lazarus
 
#11

Re: Programm mit Tastatur steuern?

  Alt 20. Feb 2009, 14:10
Hab jetzt folgenden Code

Delphi-Quellcode:
procedure TForm1.FormKeyPress(Sender: TObject; var Key: Char);
begin
if Key=CHR(VK_RETURN) then showmessage('ok');
end;
Das funkt auch, aber das hier:

Delphi-Quellcode:
procedure TForm1.FormKeyPress(Sender: TObject; var Key: Char);
begin
if Key=CHR(VK_RIGHT) then showmessage('ok');
end;
nicht, ich frage mich wieso?
  Mit Zitat antworten Zitat
Hansa

Registriert seit: 9. Jun 2002
Ort: Saarland
7.554 Beiträge
 
Delphi 8 Professional
 
#12

Re: Programm mit Tastatur steuern?

  Alt 20. Feb 2009, 14:14
Auch das ist bereits vorgekaut in dem Link nachzulesen.
Gruß
Hansa
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#13

Re: Programm mit Tastatur steuern?

  Alt 20. Feb 2009, 14:15
ähhh ... lesen hilft ja bekanntlich ... wir sprachen immer von OnKeyDown, OnKeyUp ... niemales von OnKeyPress
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
AlexII

Registriert seit: 28. Apr 2008
1.717 Beiträge
 
FreePascal / Lazarus
 
#14

Re: Programm mit Tastatur steuern?

  Alt 20. Feb 2009, 14:20
Zitat von Hansa:
Auch das ist bereits vorgekaut in dem Link nachzulesen.
Hab da nix gefunden, VK_Right, CHR(37)Links oder CHR(39)Rechts funktionieren nicht.
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#15

Re: Programm mit Tastatur steuern?

  Alt 20. Feb 2009, 14:21
ahhhhhhh ... nimm statt dem Event OnKeyPress das Event OnKeyDown ... nur da kannst du die Pfeiltasten abfragen!
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
AlexII

Registriert seit: 28. Apr 2008
1.717 Beiträge
 
FreePascal / Lazarus
 
#16

Re: Programm mit Tastatur steuern?

  Alt 20. Feb 2009, 14:21
Zitat von Sir Rufo:
ähhh ... lesen hilft ja bekanntlich ... wir sprachen immer von OnKeyDown, OnKeyUp ... niemales von OnKeyPress
Ach so... und wieso brauche ich zwei Ereignisse? Reicht nur OnKeyDown?
  Mit Zitat antworten Zitat
AlexII

Registriert seit: 28. Apr 2008
1.717 Beiträge
 
FreePascal / Lazarus
 
#17

Re: Programm mit Tastatur steuern?

  Alt 20. Feb 2009, 14:23
Bei OnKeyDown OnKeyUp funkt überhaupt nicht, nicht mal Enter.
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#18

Re: Programm mit Tastatur steuern?

  Alt 20. Feb 2009, 14:23
Du brauchst nicht 2 Ereignisse, sondern du kannst bei diesen 2 Ereignissen die Info zu den Pfeiltasten bekommen.

Du entscheidest, wann du reagieren möchtest

Taste runter -> OnKeyDown
Taste rauf -> OnKeyUp (denn wat runter muss auch wieder rauf)
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.270 Beiträge
 
Delphi 10.4 Sydney
 
#19

Re: Programm mit Tastatur steuern?

  Alt 20. Feb 2009, 14:24
Hallo,

OnKeyPress
Warum nicht ShowMessage(Key)

OnKeyDown
Es wird direkt VK_X abgefragt.

If Key=VK_RIGHT
Heiko
Heiko
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#20

Re: Programm mit Tastatur steuern?

  Alt 20. Feb 2009, 14:27
Delphi-Quellcode:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs;

type
  TForm1 = class(TForm)
    procedure FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState);
    procedure FormCreate(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
  KeyPreview := True;
end;

procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  ShowMessage( Format( '%d', [ Key ] ) );
end;

end.
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 3     12 3      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:17 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