Re: Ungewollter Zugriff auf in einem Array gespeichertes Obj
sry habe vergessen die Zeile zu Markieren :wall: . Es ist die erste Zeile der TRobot.Initialisieren Methode.
|
Re: Ungewollter Zugriff auf in einem Array gespeichertes Obj
Wie lautet denn die Fehlermeldung?
Grüße Klaus |
Re: Ungewollter Zugriff auf in einem Array gespeichertes Obj
Im Projekt Project1.exe ist eine Exception der Klasse EAccessViolation aufgetreten.
'Zugriffsverletzung bei der Adresse 0044C27 im Modul 'Project1.exe' Schreiben von Adresse 00000004'. |
Re: Ungewollter Zugriff auf in einem Array gespeichertes Obj
.. bevor Du die Methode initialisieren aufrufst, hast
Du das TRobot.create ausgeführt? Grüße Klaus |
Re: Ungewollter Zugriff auf in einem Array gespeichertes Obj
Ich weiß ich bin blöd genau das war dies Fehlermeldung :wall: :wall: :wall: :wall:
Auf einer Skala von 1 bis Blöd konnte ich keinen Punkt ergattern :oops: |
Re: Ungewollter Zugriff auf in einem Array gespeichertes Obj
Ich habe jetzt noch eine Fehlermeldung (auch EAccessViolation) in dieser Programmzeile:
Delphi-Quellcode:
KoordX[i]:=Round(PositionX+Sin(Winkel_1+Winkelz[i])*10);
|
Re: Ungewollter Zugriff auf in einem Array gespeichertes Obj
Delphi-Quellcode:
Kommt die Fehlermedlung genau in der Zeile
procedure TRobot.Zeichnen(Ziel: TBitmap);
var Koord : array[1..3] of TPoint; i :integer; Winkelz: array[1..3] of double; begin Winkelz[1]:=pi; Winkelz[2]:=2*Pi/3+pi; Winkelz[3]:=4*Pi/3+pi; for i:= 1 to 3 do begin Koord[i].x:=Round(Position[1]+Sin(Winkel_1+Winkelz[i])*10); Koord[i].y:=Round(Position[2]+Cos(Winkel_1+Winkelz[i])*10); end; if assigned(ziel) then begin Ziel.Canvas.Brush.Color:=clred; Ziel.Canvas.Polygon(Koord); end; end; oder kommt sie wenn Du auf dem Bitmap etwas zeichnen willst? Grüße Klaus |
Re: Ungewollter Zugriff auf in einem Array gespeichertes Obj
der Fehler kommt in den Zeilen
Delphi-Quellcode:
Danke für den Code, der ist wesentlich übersichtlicher als mein alter :-D
Koord[i].x:=Round(PositionX+Sin(Winkel_1+Winkelz[i])*10);
Koord[i].y:=Round(PositionY+Cos(Winkel_1+Winkelz[i])*10); |
Re: Ungewollter Zugriff auf in einem Array gespeichertes Obj
Zitat:
Delphi-Quellcode:
Warum heißt es bei Dir PositionX und nicht Position[1]?
Koord[i].x:=Round(PositionX+Sin(Winkel_1+Winkelz[i])*10);
Grüße Klaus |
Re: Ungewollter Zugriff auf in einem Array gespeichertes Obj
Oh sorry... :wall:
Ich habe aus
Delphi-Quellcode:
zwei integer gemacht (Der übersichtlichkeit wegen).
Position: Array[1..2] of integer;
Aber das sollt an sich nichts ausmachen. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 18:02 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