Thema: Delphi Undeclared identifier

Einzelnen Beitrag anzeigen

Benutzerbild von maximus Caesar
maximus Caesar

Registriert seit: 26. Sep 2004
Ort: Biberach
319 Beiträge
 
Turbo Delphi für Win32
 
#1

Undeclared identifier

  Alt 26. Sep 2004, 16:38
Hallo!
Hab schon die Suchfunktion benutzt, aber keine Lösung gefunden.
Ich versuche eine Eigene komponente zu schreiben, die auf TImage basiert.
Bis jetzt sieht sie folgender maßen aus:


Delphi-Quellcode:
unit ImageMovereg;

interface

uses
  Windows, Messages, SysUtils, Classes, Controls, ExtCtrls;
var x,z:String;
    y,a:Integer;
    zeit1,zeit2:longint;

type
  TImageMove = class(TImage)
  private
        FMoveTo:String;
        FGeschwindigkeit:longint;
        FZahl1:Integer;
        FZahl2:Integer;
        FStatus:Boolean;
    { Private declarations }
  protected
    { Protected declarations }
  public

    { Public declarations }
  published
        property Zahl1 : Integer Read FZahl1 Write FZahl1;
        property Zahl2 : Integer Read FZahl2 Write FZahl2;
        property MoveTo : String Read FMoveTo Write FMoveTo;
        property Geschwindigkeit : longint Read FGeschwindigkeit Write FGeschwindigkeit;
        property Status : Boolean Read FStatus Write FStatus;
    { Published declarations }
  end;

procedure Register;

implementation




procedure Register;
begin
  RegisterComponents('Eigene Komponenten', [TImageMove]);
end;

procedure Move;
begin
a:=0;
x:=FMoveTo;
Delphi-Quellcode:
delete(x,3,999);
z:=FMoveTo;
delete(z,1,2);
y:=StrToInt(z);
if x='t+'then begin
        repeat
        a:=a+1;
        FTop:=FTop-1;
                zeit1:=GetTickCount;
        zeit2:=FGeschwindigkeit;
                repeat
                        Application.Processmessages
                if (GetAsyncKeyState(VK_ESCAPE))<>0 then break;
                until (GetTickCount-Zeit1>zeit2)
        if (GetAsyncKeyState(VK_ESCAPE))<>0 then break;
        until a>=y;
end;
if x='t-then begin
        repeat
        a:=a+1;
        FTop:=FTop+1;
                zeit1:=GetTickCount;
        zeit2:=FGeschwindigkeit;
                repeat
                        Application.Processmessages
                if (GetAsyncKeyState(VK_ESCAPE))<>0 then break;
                until (GetTickCount-Zeit1>zeit2)
        if (GetAsyncKeyState(VK_ESCAPE))<>0 then break;
        until a>=y;
end;
if x='l+'then begin
        repeat
        a:=a+1;
        FLeft:=FLeft-1;
                zeit1:=GetTickCount;
        zeit2:=FGeschwindigkeit;
                repeat
                        Application.Processmessages
                if (GetAsyncKeyState(VK_ESCAPE))<>0 then break;
                until (GetTickCount-Zeit1>zeit2)
        if (GetAsyncKeyState(VK_ESCAPE))<>0 then break;
        until a>=y;
end;
if x='l-then begin
        repeat
        a:=a+1;
        FLeft:=FLeft+1;
                zeit1:=GetTickCount;
        zeit2:=FGeschwindigkeit;
                repeat
                        Application.Processmessages
                if (GetAsyncKeyState(VK_ESCAPE))<>0 then break;
                until (GetTickCount-Zeit1>zeit2)
        if (GetAsyncKeyState(VK_ESCAPE))<>0 then break;
        until a>=y;
end;

end;
end;



end.

Wenn ich sie jetzt Compiliere erscheint folgende Fehlermeldung:

[Error] ImageMovereg.pas(48): Undeclared identifier: 'FMoveTo' (Zeile oben rot markiert)

Wie kann ich dafür sorgen, dass ich an dieser Stelle auf die Eigenschaft "MoveTo" zugreifen kann?

PS: Die Absnitte gehören natürlich zusammen, sie sind nur getrennt, um die Zeile Rot zu markieren!
  Mit Zitat antworten Zitat