![]() |
Arrays übergeben
Hallo,
ja ich weiß, das Problem wurde schon mehrmals behandelt, ich habe auch schon rumprobiert und gemacht und und und..... nur egal, was ich mache, es will einfach nicht!!!! Also ich habe im Frame1 ein Array, dessen Inhalt ich in Frame2 haben will. Nun, wie ich gelesen habe, muss ich einen Type dafür erstellen. Gemacht! Und nun?
Delphi-Quellcode:
Und auf der Gegenseite dann:
type
TCharacter = class(TFrame) ... private .. public // Variante 1 mit der ich es Probiert habe Inventar: Inv; // Variante 2 mit der ich es Probiert habe Property Inven: Inv read Inventar write Inventar; // Variante 3 mit der ich es Probiert habe Function GetInventar: Inv; end;
Delphi-Quellcode:
Achso und hier:
type
TFrameLaden = class(TFrame) ... private inv_Char: TCharacter; b: Eintrag; ...... b := inv_char.Inven[0]; // <-- Hier geht es nicht. (EAccessViolation) b := inv_char.Inventar[0]; // <-- Hier geht es auch nicht. (EAccessViolation) b := inv_char.GetInventar[0]; // <-- Und hier ebendfalls nicht. (EAccessViolation)
Delphi-Quellcode:
Hoffe mir kann einer helfen.
type Inv = Array [0..1] of Eintrag;
MfG Kenuvis |
Re: Arrays übergeben
Warum gibst du denn bei den Arrays einen Index an, wenn du das gesamte Array haben willst?Wenn b vom typ inv ist (so habe ich das jetzt verstanden), dann genügt
Delphi-Quellcode:
Und der Frame existiert wirklich?
b:=inv_char.inven; //oder
b:=inv_char.inventar; //oder b:=inv_char.getinventar; Hoffe geholfen zu haben Apollonius |
Re: Arrays übergeben
Ich habe nun das erst mit einem Button auslösen lassen, damit ja alles fertig geladen ist.
Delphi-Quellcode:
Effekt ist der gleiche. Nichts geht.
procedure TFrameLaden.Button1Click(Sender: TObject);
var c: inv; begin c := inv_char.Inven; c := inv_char.Inventar; c := inv_char.GetInventar; end; Also irgendetwas fundamentales mache ich falsch. |
Re: Arrays übergeben
Hast du die Klasse den instantiiert?
|
Re: Arrays übergeben
In dem Quellcode, den du gepostet hast, versuchst du der Variablen c vom Typ inv_waffen einen Wert vom Typ inv zuzuweisen.
|
Re: Arrays übergeben
Ja, sry, das war ein schreibfehler im forum.... Soll natürlich nur inv sein.
Instanziert ?? |
Re: Arrays übergeben
Zitat:
Delphi-Quellcode:
inv_Char := TCharacter.Create( ...);
|
Re: Arrays übergeben
Nein, das hab ich nicht gemacht.
Wenn ich das mache, was soll denn da als Attribut von Create sein ? |
Re: Arrays übergeben
Der Owner also Form oder Nil. Erst nach Erstellung einer Instanz kann man mit der Arbeiten.
|
Re: Arrays übergeben
Mein Held........ Danke!
Es geht! Meine Güte, wie konnt ich sowas dummes nur machen... :wall: :wall: Na egal, ich weiß, hier wird mir geholfen, egal wie dumm ich bin. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 18:33 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz