AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi Auf Pfeiltasten reagieren
Thema durchsuchen
Ansicht
Themen-Optionen

Auf Pfeiltasten reagieren

Ein Thema von Peter_Panther · begonnen am 7. Dez 2003 · letzter Beitrag vom 5. Nov 2017
Antwort Antwort
Seite 1 von 3  1 23      
Peter_Panther

Registriert seit: 7. Dez 2003
16 Beiträge
 
#1

Auf Pfeiltasten reagieren

  Alt 7. Dez 2003, 11:42
Hallo Leute,

Bin gerade dabei ein Spiel zu proken welches auf die pfeiltasten (zum bewegen der grafik)
reagieren soll.

Nur leider funktioniert
Delphi-Quellcode:
procedure TForm1.FormKeyPress(Sender: TObject; var Key: Char);
begin
if Key = Ord('a') then ShowMessage('bla');
end;
nicht.

falls der obenstehende code total falsch is, dann bitte nicht beachten

[edit=sakura] [delphi]-Tags gesetzt. Mfg, sakura[/edit]
  Mit Zitat antworten Zitat
Dagon

Registriert seit: 13. Jul 2003
505 Beiträge
 
Delphi 7 Professional
 
#2

Re: Auf Pfeiltasten reagieren

  Alt 7. Dez 2003, 11:52
Hier:

Delphi-Quellcode:
procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if key = vk_left then ShowMessage('Hallo');
end;
Musst das ganze einfach noch auf deine Bedürfnisse anpassen.

  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.184 Beiträge
 
Delphi 12 Athens
 
#3

Re: Auf Pfeiltasten reagieren

  Alt 7. Dez 2003, 11:53
Ein Hallöle von http://www.FrankNStein.de/Smiley-Wolke.gif und herzlich willkommen im DP-Team.

Ja, mit FormKeyPress geht das nicht, aber in FormKeyUp oder FormKeyDown geht das.

Siehe "OnKeyUp (Ereignis von TWinControl)" und "Virtuelle Tastencodes" in der OH.


http://www.FrankNStein.de/Smiley-Kuss.gif * * http://www.FrankNStein.de/Smiley-Spinne.gif * * * http://www.FrankNStein.de/Smiley-Winken.gif
$2B or not $2B
  Mit Zitat antworten Zitat
Benutzerbild von Mirilin
Mirilin

Registriert seit: 21. Dez 2002
Ort: Lenzburg
861 Beiträge
 
Delphi 6 Professional
 
#4

Re: Auf Pfeiltasten reagieren

  Alt 7. Dez 2003, 11:53


nimm doch OnKeyDown :
Delphi-Quellcode:
procedure TMainForm.FormKeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if key = VK_UP then
   ...
end;
, dann kannst du die Virtuellen Tastencodes brauchen...


mfg Tobias
Tobias
Die Physik ist für die Physiker eigentlich viel zu schwer.
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.184 Beiträge
 
Delphi 12 Athens
 
#5

Re: Auf Pfeiltasten reagieren

  Alt 7. Dez 2003, 11:58
Ach ja, das andere geht natürlich auch nicht.

Zitat:
procedure TForm1.FormKeyPress(Sender: TObject; var Key: Char);
begin
if Key = Ord('a') then ShowMessage('bla');
end;
Key ist vom Typ Char, daher ist es so richtig:
Delphi-Quellcode:
Procedure TForm1.FormKeyPress(Sender: TObject; Var Key: Char);
  Begin
    If Key = 'aThen ShowMessage('Das Kleine a wurde gedrückt');
  End;

http://www.FrankNStein.de/Smiley-Kuss.gif * * http://www.FrankNStein.de/Smiley-Spinne.gif * * * http://www.FrankNStein.de/Smiley-Winken.gif
$2B or not $2B
  Mit Zitat antworten Zitat
Peter_Panther

Registriert seit: 7. Dez 2003
16 Beiträge
 
#6

Re: Auf Pfeiltasten reagieren

  Alt 7. Dez 2003, 12:09
danke fuer die vielen antworten (man ging das schnell

aber irgendwie will der bei mir nicht ?!

Code:
unit Unit1;

interface

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

type
  TForm1 = class(TForm)
  private
    { Private-Deklarationen }
  public
  Procedure FormKeyPress(Sender: TObject; Var Key: Char);
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

Procedure TForm1.FormKeyPress(Sender: TObject; Var Key: Char);
  Begin
    If Key = 'a' Then ShowMessage('Das Kleine a wurde gedrückt');
  End;

end.
was mach ich falsch ?
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.117 Beiträge
 
Delphi 11 Alexandria
 
#7

Re: Auf Pfeiltasten reagieren

  Alt 7. Dez 2003, 12:16
Moin Peter,

erst einmal herzlich willkommen hier in der Delphi-PRAXiS.

Ich nehme mal an, dass Du nicht nur ein leeres Formular sondern auch noch einige sonstige Komponenten auf demselben hast. Dies hat zur Folge, dass der Tastendruck an die jeweilige Komponente, die den Tastaturfokus hat weitergeleitet wird, und im OnKeyPress des Formulares kommt es dann nicht mehr an.
Um das OnKeyPress des Formulares trotzdem verwenden zu können, musst Du noch die Eigenschaft KeyPreview auf true setzen.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.184 Beiträge
 
Delphi 12 Athens
 
#8

Re: Auf Pfeiltasten reagieren

  Alt 7. Dez 2003, 12:17
Falsche Stelle:
Code:
[b]type[/b]
  TForm1 = [b]class[/b](TForm)
    [color=red][b]Procedure[/b] FormKeyPress(Sender: TObject; [b]Var[/b] Key: Char);[/color]
  [b]private[/b]
    { Private-Deklarationen }
  [b]public[/b]
  [s][b]Procedure[/b] FormKeyPress(Sender: TObject; Var Key: Char);[/s]
    { Public-Deklarationen }
  [b]end[/b];
Tipp: Zum Erstellen des Ereignisses/der Prozedur einfach im OI in das leere Feld neben OnKeyPress klicken.
Und auf Chris hören.


http://www.FrankNStein.de/Smiley-Kuss.gif * * http://www.FrankNStein.de/Smiley-Spinne.gif * * * http://www.FrankNStein.de/Smiley-Winken.gif
$2B or not $2B
  Mit Zitat antworten Zitat
Peter_Panther

Registriert seit: 7. Dez 2003
16 Beiträge
 
#9

Re: Auf Pfeiltasten reagieren

  Alt 7. Dez 2003, 12:23
ich danke euch!
manchmal hat man halt doch ein brett vorm kopf (oder 2 oder 3)

also herzlichen dank!
bis zum naechsten mal,
Peter
  Mit Zitat antworten Zitat
braucheHilfe

Registriert seit: 19. Jan 2017
9 Beiträge
 
#10

AW: Auf Pfeiltasten reagieren

  Alt 19. Jan 2017, 20:47
Entschuldigung, wenn ich jetzt noch mal diesen Eintrag von vor über 10 Jahren erweitern muss,
aber ich stehe hier grade vor einem mir unerklärlichen Problem:
Ich hab alles wie erklärt abgeschrieben und bei mir startet das Programm auch,
aber es passiert einfach nichts, wenn ich die belegte Taste drücke.
(Ich habs schon mit verschieden Tasten versucht)
Miniaturansicht angehängter Grafiken
adgadgdagaagadgagdadgdag.png  
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 3  1 23      


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 12:21 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