![]() |
Re: Eigene Klassen-Objects mit TStream speichern
Zitat:
aber ein bissl hätte ich da noch was: Zitat:
|
Re: Eigene Klassen-Objects mit TStream speichern
Ach, wie ich mich freue, dass alci das Tut endlich fertig hat :mrgreen:
![]() Da kannst du dir ein tolles Tutorial herunterladen, dass dir hoffentlich alle fragen beantwortet ;) |
Re: Eigene Klassen-Objects mit TStream speichern
herzlichen dank auch! sieht mal sehr informativ aus. (hab es mal kurz nach dem ausdrucken überflogen) werde mich die nächsten tage nochmal richtig dransetzen. falls dann doch noch fragen aufkommen sollten, melde ich mich einfach hier nochmal.
MfG, Der_Pate86 |
Re: Eigene Klassen-Objects mit TStream speichern
so, ich hab das ganze jetzt mal in mein projekt eingebaut und es läuft auch. das probelm ist: es wird richtig gespeichert, aber die datei ist leer! der speichert zwar das CollectionItem, aber nicht dessen Objekte und die darin enthaltenen Attribute. =(
was nun? |
Re: Eigene Klassen-Objects mit TStream speichern
Die Unterobjekte der Collection-Items müssen von TPersistent abgeleitet werden ;)
|
Re: Eigene Klassen-Objects mit TStream speichern
Zitat:
@Der_Pate: Kannst du vielleicht mal dein CollectionItem hier posten (einfach die Klassendeklaration)? Das wuerde die Fehlersuche ein bisschen erleichtern ;) Greetz alcaeus |
Re: Eigene Klassen-Objects mit TStream speichern
Ich weis, ich bin besserwisserisch, und ich versuche auch, mich zu ändern aber ein "Das stimmt nur teilweise." kann ich einfach nicht auf mir sitzen lassen :mrgreen:
Ich hatte nämlich von Unterobjekten gesprochen, die von TPersistent abgeleitet werden müssen - und in diesem Fall (Win32) sind Integers etc. keine Objekte - und müssen somit auch nicht von TPersistent abgeleitet werden :zwinker: :mrgreen: |
Re: Eigene Klassen-Objects mit TStream speichern
aha, ok danke. das versuche ich jetzt gleich mal. aber bringt das irgendwelche veränderungen beim umgang mit den unterobjekten, oder so?
|
Re: Eigene Klassen-Objects mit TStream speichern
hmmm...es wird trotzdem nicht sogespeichert wie es sollte.
hier die gesammte objekt-deklaration:
Delphi-Quellcode:
type
TEquipment = class(TPersistent) public Name:string[30]; Kosten:integer; FuerKlasse:array [0..4] of boolean; Verfuegbarkeit:array [0..9] of boolean; end; type TRumpf = class(TEquipment) public Klasse,Waffenslots,Equipmentslots,Panzerung,Wendigkeit:integer; end; type TWaffe = class(TEquipment) public Kategorie,Waffenslots,Schaden,Munition:integer; end; type TSchild = class(TEquipment) public Absorbtion:integer; end; type TAusstattung = class(TEquipment) public Kategorie,Faktor:integer; WirkungAuf:array [0..4] of string[30]; end; type TAntrieb = class(TEquipment) public TopSpeed,WS:integer; end; type TPlanet = class(TPersistent) public Name,Volk,Regierung,Event,Benoetigt,WeedProTag:string; Weedproduktion:integer; end; type TCharacter = class(TPersistent) public Erfahrung,Level,Coolness,Credits,Zielgenau,Flugkenntnis:integer; end; type TSchiff = class(TPersistent) public Name:string[30]; Rumpf:TRumpf; Waffen:array [0..49] of TWaffe; Schild:TSchild; Ausstattung:array [0..49] of TAusstattung; Antrieb:TAntrieb; constructor Create; end; type TSpieler = class(TPersistent) public Name,Passwort,Rasse:string[30]; PWschutz:boolean; Character:TCharacter; Schiff:TSchiff; constructor Create; end; type TGameData = class(TPersistent) public PlanetID:integer; Rumpf:array [0..5] of TRumpf; Waffen:array [0..6] of TWaffe; Schild:array [0..4] of TSchild; Ausstattung:array [0..34] of TAusstattung; Antrieb:array [0..5] of TAntrieb; Planeten:array [1..10] of TPlanet; constructor Create; end; type TGame = class(TCollectionItem) Spieler1:TSpieler; GameData:TGameData; end; |
Re: Eigene Klassen-Objects mit TStream speichern
Nur mal schnell ein paar Dinge, die mir gerade ins Auge gesprungen sind. Für mehr habe ich keine Lust, da ich nur wiederholen würde, was du bisher schon nicht lesen wolltest... :wall:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:51 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