AGB  ·  Datenschutz  ·  Impressum  







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

FormKeyDown Problem

Ein Thema von hanfy · begonnen am 29. Jun 2007 · letzter Beitrag vom 30. Jun 2007
Antwort Antwort
hanfy

Registriert seit: 29. Jun 2007
3 Beiträge
 
#1

FormKeyDown Problem

  Alt 29. Jun 2007, 16:52
Also ich bin nicht wirklcih gut in delphi aber das sag ja mal jedr de neu anfängt und zwar verstehe ich ncith wieso ich formkeydown nicht verwenden kann

ich habe meine programm so getestet das ich das bild mit 4 buttons steuern kann das geht wunderbar nur halt nicht mit dem befehl keydown
ich habe dieses KeyPreview auf True

und das ist meine fehler meldung:
Code:
Build
  [Error] Unit1.pas(53): Undeclared identifier: 'FormKeyDown'
  [Error] Unit1.pas(53): ';' expected but '(' found
  [Error] Unit1.pas(53): ';' expected but ')' found
  [Error] Unit1.pas(56): Undeclared identifier: 'Image1'
  [Error] Unit1.pas(56): Missing operator or semicolon
  [Error] Unit1.pas(57): Missing operator or semicolon
  [Error] Unit1.pas(60): ';' expected but '.' found
  [Error] Unit1.pas(62): Declaration expected but end of file found
  [Fatal Error] Project1.dpr(5): Could not compile used unit 'Unit1.pas'
hier mal mein quelltext:
Code:
unit Unit1;

interface

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

type
  TForm1 = class(TForm)
    Image1: TImage;
    Button1: TButton;
    Button2: TButton;
    Button3: TButton;
    Button4: TButton;
    procedure Button1Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure Button4Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
Image1.Top := Image1.Top -5
end;

procedure TForm1.Button3Click(Sender: TObject);
begin
Image1.Left := Image1.Left +5
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
Image1.Left := Image1.Left -5
end;

procedure TForm1.Button4Click(Sender: TObject);
begin
Image1.Top := Image1.Top +5
end;

procedure TForm1.FormKeyDown(Sender: TObject; var Key : Char);
begin
if key=#87 then
Image1.Top := Image1.Top -5
begin

end;
end.
MFG Hanfy
  Mit Zitat antworten Zitat
Nuclear-Ping
(Gast)

n/a Beiträge
 
#2

Re: FormKeyDown Problem

  Alt 29. Jun 2007, 16:55
Die Fehlermeldung sagt ja schon alles aus.
Zitat:
procedure TForm1.FormKeyDown(Sender: TObject; var Key : Char);
begin
if key=#87 then
Image1.Top := Image1.Top -5 << Hier fehlt das Semikolon
begin << Wozu nochmal begin?

end; << 2x begin, nur 1x end
end.
  Mit Zitat antworten Zitat
fLaSh11
(Gast)

n/a Beiträge
 
#3

Re: FormKeyDown Problem

  Alt 29. Jun 2007, 17:02
außerdem musst du noch im OnKeyDown-Ereignis im OI dein "Form1.OnKeyDown" eintragen...
Außerdem stehen normalerweise folgende Params dabei:
procedure FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState);
  Mit Zitat antworten Zitat
hanfy

Registriert seit: 29. Jun 2007
3 Beiträge
 
#4

Re: FormKeyDown Problem

  Alt 29. Jun 2007, 17:05
habe es nochmal geändert wie du es geschrieben hast aber es kommt immer noch die einen fehler und ich weiss nciht was ich machen soll sry

edit: @ flash erm.. ich weis nicht was du meinst mit Form1.OnKeyDown

Code:
Build
  [Error] Unit1.pas(53): Undeclared identifier: 'FormKeyDown'
  [Error] Unit1.pas(53): ';' expected but '(' found
  [Error] Unit1.pas(53): ';' expected but ')' found
  [Error] Unit1.pas(56): Undeclared identifier: 'Image1'
  [Error] Unit1.pas(56): Missing operator or semicolon
  [Fatal Error] Project1.dpr(5): Could not compile used unit 'Unit1.pas'
Delphi-Quellcode:
procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState);
begin
if key=#87 then
Image1.Top := Image1.Top -5;
end;
end.
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#5

Re: FormKeyDown Problem

  Alt 29. Jun 2007, 18:12
Herzlich willkommen in der Delphi-PRAXiS, hanfy.

Setze deine Prozedur FormKeyDown einfach mal auf Kommentar, indem du sie in geschweifte Klammern einfasst. Anschließend wählst du im Object Inspector deine Form aus und erzeugst die Behandlungsroutine für das Ereignis OnFormKeyDown() durch einen Doppelklick auf den leeren Eintrag in der Ereignisliste des OI. In den jetzt von der IDE erzeugten Prozedur-Rahmen kannst du dann deinen Code eintragen und der erste Compiler-Fehler verschwindet.

Freundliche Grüße vom marabu
  Mit Zitat antworten Zitat
hanfy

Registriert seit: 29. Jun 2007
3 Beiträge
 
#6

Re: FormKeyDown Problem

  Alt 30. Jun 2007, 12:44
Zitat von marabu:
Herzlich willkommen in der Delphi-PRAXiS, hanfy.

Setze deine Prozedur FormKeyDown einfach mal auf Kommentar, indem du sie in geschweifte Klammern einfasst. Anschließend wählst du im Object Inspector deine Form aus und erzeugst die Behandlungsroutine für das Ereignis OnFormKeyDown() durch einen Doppelklick auf den leeren Eintrag in der Ereignisliste des OI. In den jetzt von der IDE erzeugten Prozedur-Rahmen kannst du dann deinen Code eintragen und der erste Compiler-Fehler verschwindet.

Freundliche Grüße vom marabu
so das habe ich gemacht danke schon mal wusste nicht das man das so macht habe immer alles selbst geschrieben xD

so nun kommt folgende fehler noch

Code:
Build
  [Error] Unit1.pas(64): Incompatible types
  [Fatal Error] Project1.dpr(5): Could not compile used unit 'Unit1.pas'
edit ist in ordnung es klappt alles danke an euch allen vielen dank
  Mit Zitat antworten Zitat
Antwort Antwort


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 02:55 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