AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

WriteComponentRes und eigene Komponente

Ein Thema von Snakeye · begonnen am 1. Sep 2004 · letzter Beitrag vom 2. Sep 2004
Antwort Antwort
Seite 1 von 2  1 2      
Snakeye
(Gast)

n/a Beiträge
 
#1

WriteComponentRes und eigene Komponente

  Alt 1. Sep 2004, 13:46
Hallo zusammen!

Ich habe mir eine Klasse namens TAlert von TComponent abgeleitet und möchte jetzt zur Laufzeit ein Objekt dieser neuen Klasse mit der Methode WriteComponentRes von TFileStream in eine Datei speichern.
Delphi-Quellcode:
[...]
MyAlert: TAlert;
[...]

var
  S: TFileStream;
begin
  S := TFileStream.Create('C:\Test.dfm', fmCreate);
  try
    S.WriteComponentRes(MyAlert.Classame, MyAlert);
  finally
    S.Free
  end;
end;
Eigentlich müssten ja dann alle Eigenschaften meiner Klasse dann in dieser Datei stehen.
Die Eigenschaften habe ich in der Klasse so definiert:
(Sie wurde an den Konstruktor übergeben und dort in FTestText eingetragen);

Delphi-Quellcode:
private
  FTestText: string;

public
  property TestText: string read FTestText;
Nur leider steht dann in der Datei (wenn ich sie mit Delphi geöffnet habe) nur folgendes:

Delphi-Quellcode:
object TAlert
end
Was amche ich falsch?
Wenn ich das ganze statt mit meiner Komponente mit dem einem TButton mache, klappt alles wunderbar...


Danke schonmal!
  Mit Zitat antworten Zitat
Dax
(Gast)

n/a Beiträge
 
#2

Re: WriteComponentRes und eigene Komponente

  Alt 1. Sep 2004, 13:50
Soweit ich weiss, ist WriteComponentRes auch nur für die IDE gedacht...
Frag mal bei den Borländern nach, vielleicht sagen die dir ja was.
  Mit Zitat antworten Zitat
Benutzerbild von mirage228
mirage228

Registriert seit: 23. Mär 2003
Ort: Münster
3.750 Beiträge
 
Delphi 2010 Professional
 
#3

Re: WriteComponentRes und eigene Komponente

  Alt 1. Sep 2004, 13:56
Hi,

mach die property mal nicht public, sondern published.

mfG
mirage228
David F.

May the source be with you, stranger.
PHP Inspection Unit (Delphi-Unit zum Analysieren von PHP Code)
  Mit Zitat antworten Zitat
Snakeye
(Gast)

n/a Beiträge
 
#4

Re: WriteComponentRes und eigene Komponente

  Alt 1. Sep 2004, 17:44
Das hilft leider auch nicht... habs schon ausprobiert...
published sagt ja nur, dass die Eigenschaft im Objekt-Inspektor verfügbar ist.
  Mit Zitat antworten Zitat
Benutzerbild von Nothine
Nothine

Registriert seit: 3. Jul 2004
Ort: Mülheim an der Ruhr
198 Beiträge
 
Delphi 5 Enterprise
 
#5

Re: WriteComponentRes und eigene Komponente

  Alt 1. Sep 2004, 18:44
also bei mir funktionierts, allerdings nur unter der bedingung dass du noch die property nich als nur lesen sondern als read und write deklarierst, weiß aber nich inwieweit dir das hilft weil du die property wahrscheinlich absichtlich als nur-lesen deklariert hast...
if ThisPost is senseless then
ThisPost.WasPostedBy := SomeoneElse();
  Mit Zitat antworten Zitat
Benutzerbild von Fossibaer58809
Fossibaer58809

Registriert seit: 20. Aug 2004
Ort: Lüdenscheid
50 Beiträge
 
Delphi 2007 Professional
 
#6

Re: WriteComponentRes und eigene Komponente

  Alt 1. Sep 2004, 19:22
Hallo zusammen,

[oh]Die Methode DefineProperties legt Methoden fest, mit denen die nicht als published deklarierten Daten eines Objekts in einem Stream (z.B. in einer Formulardatei) gespeichert werden können.[/oh]


Gruß
Michael
Michael Küper
  Mit Zitat antworten Zitat
Benutzerbild von maximov
maximov

Registriert seit: 2. Okt 2003
Ort: Hamburg
548 Beiträge
 
Delphi 2005 Professional
 
#7

Re: WriteComponentRes und eigene Komponente

  Alt 2. Sep 2004, 09:32
Zitat von Nothine:
also bei mir funktionierts, allerdings nur unter der bedingung dass du noch die property nich als nur lesen sondern als read und write deklarierst, weiß aber nich inwieweit dir das hilft weil du die property wahrscheinlich absichtlich als nur-lesen deklariert hast...
Die property muss zwingend...

a) als published deklariert sein
b) read and writebar sein (macht auch sonst keinen sinn)
c) vom defaultwert abweichen (hast du aber nicht - also erstmal egal)

..damit sie gestreamed werden kann.
mâxîmôv.

{KDT}
  Mit Zitat antworten Zitat
Benutzerbild von Nothine
Nothine

Registriert seit: 3. Jul 2004
Ort: Mülheim an der Ruhr
198 Beiträge
 
Delphi 5 Enterprise
 
#8

Re: WriteComponentRes und eigene Komponente

  Alt 2. Sep 2004, 10:18
Zitat von maximov:
c) vom defaultwert abweichen (hast du aber nicht - also erstmal egal)
Zitat:
Reelle Zahlen, Zeiger und Strings besitzen den impliziten default-Wert von 0, nil bzw. '' (einen leeren String).
er hat einen
if ThisPost is senseless then
ThisPost.WasPostedBy := SomeoneElse();
  Mit Zitat antworten Zitat
Benutzerbild von mirage228
mirage228

Registriert seit: 23. Mär 2003
Ort: Münster
3.750 Beiträge
 
Delphi 2010 Professional
 
#9

Re: WriteComponentRes und eigene Komponente

  Alt 2. Sep 2004, 10:33
Zitat von Nothine:
Zitat von maximov:
c) vom defaultwert abweichen (hast du aber nicht - also erstmal egal)
Zitat:
Reelle Zahlen, Zeiger und Strings besitzen den impliziten default-Wert von 0, nil bzw. '' (einen leeren String).
er hat einen
Ich denke, maximov meinte einen selbst angegebenen default-Wert (die anderen sind ja nur indirekte default-Werte)...

mfG
mirage228
David F.

May the source be with you, stranger.
PHP Inspection Unit (Delphi-Unit zum Analysieren von PHP Code)
  Mit Zitat antworten Zitat
Benutzerbild von Nothine
Nothine

Registriert seit: 3. Jul 2004
Ort: Mülheim an der Ruhr
198 Beiträge
 
Delphi 5 Enterprise
 
#10

Re: WriteComponentRes und eigene Komponente

  Alt 2. Sep 2004, 10:39
ich weiß ich will ihm ja auch eigentlich nur rechtgeben, weil
Zitat von snakeeye:
Die Eigenschaften habe ich in der Klasse so definiert:
(Sie wurde an den Konstruktor übergeben und dort in FTestText eingetragen)
da er die indirekte default-eigenschaft eh auf jeden fall ändert isses uninteressant
if ThisPost is senseless then
ThisPost.WasPostedBy := SomeoneElse();
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 00:22 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