AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein GUI-Design mit VCL / FireMonkey / Common Controls Delphi [fixed] Property via DefineProperty & TReader/TWriter ...
Thema durchsuchen
Ansicht
Themen-Optionen

[fixed] Property via DefineProperty & TReader/TWriter ...

Ein Thema von chaosben · begonnen am 23. Mai 2008
Antwort Antwort
Benutzerbild von chaosben
chaosben

Registriert seit: 27. Apr 2005
Ort: Görlitz
1.358 Beiträge
 
Delphi XE2 Professional
 
#1

[fixed] Property via DefineProperty & TReader/TWriter ..

  Alt 23. Mai 2008, 11:23
Mahlzeit!

Ich habe eine Komponente, die eine published Property hat, die von einer TList abgeleitet ist. Um die Property speichern und laden zu können, hab ich die DefineProperties - Routine der Komponente overrided und folgendes nach dem inherited reingeschrieben:
Filer.DefineProperty('SaveProperties', FSaveProperties.Load, FSaveProperties.Save, FSaveProperties.Count > 0); SaveProperties ist der Name der Property . FSaveProperties ist die Liste, die die beiden Routinen zur Verfügung stellt. In den Routinen nutze ich den übergebenen Reader/Writer um die Werte zu speichern (z.B. AReader.ReadWideString)

Wenn ich nun ein Formular mit der Komponente speichere, wird der Inhalt der List richtig (imho) abgespeichert. Wenn ich aber versuche, das Formular mit den gespeicherten Daten in der IDE wieder zu laden (Projekt geschlossen und wieder geöffnet) kommt der Fehler
Zitat:
Fehler beim Erzeugen von Formular: Fehler beim Lesen von SettingsLinkComponent1.SaveProperties: Ungültiger Eigenschaftswert.
In der DFM stehen 3 Werte für die Komponente: Left Top, und SaveProperties. Während des Ladens des Formulars geht Delphi 2mal in die DefineProperties (höchstwahrscheinlich für Left und Top) und dann kommt der Fehler ohne das er ein 3. Mal in die Routine gegangen ist.

Habt ihr einen Tip für mich?

Danke für eure Mühe.

//edit: ok, hat sich erledigt ... Man muss einfach bei DefineProperty einen anderen Namen wählen
Benjamin Schwarze
If I have seen further it is by standing on the shoulders of Giants. (Isaac Newton)
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:27 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