Roter Kasten. Fail. Ich poste es trotzdem:
Die von dir verlinkte Textdatei hat mit der Fehlermeldung nichts zu tun. Lazarus kennt bei dir VK_RIGHT/VK_LEFT einfach nicht. Das sind schließlich nur Bezeichnungen für "Zahlen", die unter Delphi standardmäßig bekannt sind, weil die
Unit, die die Definitionen enthält, wohl standardmäßig in der "uses"-Klausel steht. Damit es klappt musst du eben direkt die Werte der Konstanten angeben wie hier in meinem Beispiel, wobei die Werte aus der von daywalker9 verlinkten Liste kommen:
Delphi-Quellcode:
procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState);
begin
if (Shape1.Left<236) and (Shape1.Left>2) then
begin
case key of
$27: Shape1.Left:=Shape1.Left+1; // VK_RIGHT = $27
$25 : Shape1.Left:=Shape1.Left-1; // VK_LEFT = $25
end;
end;
end;
Oder du bindest eben die
Unit ein, die diese Konstanten definiert. Welche das ist, weiß ich so direkt auch nicht, ich vermute, wie bereits von DeddyH erwähnt, "Windows"...
HTH
Edit: Änder mal deine Signatur - die bringt dir sicher mehr Nach- als Vorteile
*SCNR*
Edit2: Selber definieren geht so:
Delphi-Quellcode:
const
VK_LEFT = $27;
VK_RIGHT = $25;
Das kommt unter den "type" Abschnitt der
Unit, dann müsste es klappen.