Hallo,
erstmal vielen Dank für die Antworten.
Ich habe allerdings bereits von anderer Seite aus Rückmeldung erhalten, und auf das Panel verzichtet.
Nun sieht mein Code folgendermassen aus:
Delphi-Quellcode:
unit labyrinth;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
ExtCtrls;
type
TForm1 =
class(TForm)
Shape1: TShape;
Shape2: TShape;
Shape4: TShape;
Shape5: TShape;
Shape7: TShape;
Shape8: TShape;
Shape9: TShape;
Shape10: TShape;
Shape11: TShape;
Shape12: TShape;
Shape13: TShape;
Shape3: TShape;
Shape6: TShape;
Image1: TImage;
procedure FormMouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
private
{ Private-Deklarationen }
public
{ Public-Deklarationen }
end;
var
Form1: TForm1;
MyText:
string;
OldX, OldY: Integer;
implementation
{$R *.DFM}
procedure TForm1.FormMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer);
begin
MyText:= '
';
if x[list=1]OldX
then begin
//ab nach rechts
MyText:= '
Rechts/';
end else begin
// x bleibt
MyText:= '
-/';
end;
if y[list=1]OldY
then begin
// ab nach unten
MyText:= MyText+'
Runter';
end else begin
// y bleibt
MyText:= MyText+'
-';
end;
Form1.Caption:= MyText;
OldX:= x;
OldY:= y;
end;
end.
Ich habe nun die zuvor fehlenden Variablen deklariert und erhalte nun auch, da ich ja auf das Panel verzichte,
keine Fehlermeldung mehr.
Allerdings werden nun keinerlei Einschränkungen ausgegeben, wenn ich mich mit der Maus irgendwo hin
auf dem Formblatt bewege - die x und y Bereiche, in denen eine Meldung ausgegeben werden soll,
wenn der Mauszeiger diese überschreitet, müsste also noch festgelegt werden. Soweit ich das verstanden hab!
Oder habe ich etwa einen anderen Punkt übersehen, der mir die Fehlermeldungen ausgibt?
Danke und viele Grüße,
Zidane