Einzelnen Beitrag anzeigen

Benutzerbild von rollstuhlfahrer
rollstuhlfahrer

Registriert seit: 1. Aug 2007
Ort: Ludwigshafen am Rhein
1.529 Beiträge
 
Delphi 7 Professional
 
#4

AW: EAccessViolation bei Array of TPoint

  Alt 17. Jul 2010, 17:25
Darum ging es mir nicht. Ich tippe darauf, dass du auf ein nicht existierendes Element des Array zugreifen willst. Dies endet typischerweise mit einer AV. Wenn du ein statisches Array hast (array[Start..Ende] of Typ) dann hast du deine festen Elemente und kannst auch nur auf diese zugreifen. Wenn du ein dynamisches Array nimmst (array of Typ) dann hat das Array von Anfang an 0 Elemente und du musst erst mit Hilfe von SetLength() das Array aufspannen. Wenn du eine Liste haben willst, ist es einfacher, die Klasse TList zu vergewaltigen als einem Array beizubringen, selbständig zu wachsen. (Wenn du nur willst, dass das Array wächst und nicht zwischendrin Elemente rausnehmen willst, ist es mit SetLength() doch einfacher).
Mit Hilfe von ShowMessage(IntToStr(Length(DeinArray))); kannst du auslesen, wie viele Elemente das Array hat und du kannst berechnen, auf welches du zugreifen willst (Achtung: dynamische Arrays fangen mit Index = 0 an!). Wenn der berechnete Wert größer ist als die Anzahl der Elemente - 1 (für das 0. Element), dann greifst du ins Leere und der Computer mag das gar nicht.

Bernhard
Bernhard
Iliacos intra muros peccatur et extra!
  Mit Zitat antworten Zitat