![]() |
Objekte in eigener TObjectList verlieren ihre Werte
Hi ihr,
ich habe eine angepasste TObjectList in der ich eigene Datenklassen speichere. Aber wenn ich nun eine neue Datenklasse erstelle, diese mit Daten befülle und dann in der Liste ablege sind beim nächsten Aufruf der Klasse aus der Liste die Werte ganze weg oder vollkommen unbrauchbar. :shock: Die Add Prozedur habe ich aber nicht verändert in der Liste. Ich arbeite derzeit mit Delphi2009. Kennt jemand eine Lösung hier? |
Re: Objekte in eigener TObjectList verlieren ihre Werte
Ohne deinen Code zu kennen: Nein.
|
Re: Objekte in eigener TObjectList verlieren ihre Werte
Datenklasse befüllen:
Delphi-Quellcode:
Aufruf aus der TObjectlist
try
locNonFood := TArtikel.Create; except on E: Exception do begin ShowMessage(E.ClassName+' error raised, with message : '+E.Message); Exit; end; end; with locNonFood do begin Artikelname:=AddArtikelDLG.txtArtikelname.Text; Menge:= Integer(AddArtikelDLG.txtAmount.Text); Preis:= Integer(AddArtikelDLG.txtPrice.Text); end; if Assigned(Artikel) then Artikel.Add(locNonFood); locNonFood.Free; end;
Delphi-Quellcode:
Beispiel:
if Artikel.Count > -1 then
begin for B := 0 to Artikel.Count - 1 do begin locNonFood := TArtikel(Artikel.Items[B]); LocItem := AListView.Items.Add; locItem.Caption := locNonFood.Artikelname; locItem.ImageIndex := -1; with locItem.SubItems do begin Add(IntToStr(locNonFood.Menge)); Add(IntToStr(locNonFood.Preis)); Add(IntToStr(locNonFood.Kosten)); end; end; end; Eingabe bei Artikelname: 'Test' Ergebnis beim Aufruf: '' Eingabe bei Menge: '2' Ergebnis beim Aufruf: '0' Eingabe bei Preis: '1,99' Ergebnis beim Aufruf: '0' :wiejetzt: |
Re: Objekte in eigener TObjectList verlieren ihre Werte
Dise Zeile muss weg:
Delphi-Quellcode:
locNonFood.Free;
|
Re: Objekte in eigener TObjectList verlieren ihre Werte
Hallo,
ausserdem würde ich eine Liste auch ArtikelList und nicht Artikel nennen. Heiko |
Re: Objekte in eigener TObjectList verlieren ihre Werte
Zitat:
Ich hab bestimmt ewig gelesen um das mit der TObjectList zu verstehen. Und nu wo du es sagst fällts mir auch auf das ja die Liste das freigeben der Objekte übernimmt :wall: Zitat:
Aber die Namen sind derzeit nicht wichtig. Die Anwendung dient im Moment nur zum Testen der Datenklasse und der Containerklasse. :stupid: |
Re: Objekte in eigener TObjectList verlieren ihre Werte
Zitat:
|
Re: Objekte in eigener TObjectList verlieren ihre Werte
Delphi-Quellcode:
Typecast auf Integer? Bist du sicher? Du suchst denke ich eher StrToInt.
with locNonFood do
begin Artikelname:=AddArtikelDLG.txtArtikelname.Text; Menge:= Integer(AddArtikelDLG.txtAmount.Text); Preis:= Integer(AddArtikelDLG.txtPrice.Text); end; |
Re: Objekte in eigener TObjectList verlieren ihre Werte
Zitat:
|
Re: Objekte in eigener TObjectList verlieren ihre Werte
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:23 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