AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein GUI-Design mit VCL / FireMonkey / Common Controls Delphi Reihenfolge beim Laden von Properties verändern
Thema durchsuchen
Ansicht
Themen-Optionen

Reihenfolge beim Laden von Properties verändern

Ein Thema von DeepCopy · begonnen am 24. Okt 2008 · letzter Beitrag vom 25. Okt 2008
 
Benutzerbild von DeepCopy
DeepCopy

Registriert seit: 5. Aug 2008
Ort: Gießen
21 Beiträge
 
Lazarus
 
#1

Reihenfolge beim Laden von Properties verändern

  Alt 24. Okt 2008, 01:06
Hallo DP'ler

ich bin auf ein Problem beim Entwickeln von Komponenten gestoßen. Ich möchte die Reihenfolge ändern in der die Properties in einer von TComponent abgeleitenen Komponente vom ObjektInstpektor gespeichert bzw geladen werden.

Ich hoffe Ihr könnt mir helfen.

Also ein Beispiel:
Delphi-Quellcode:
type
   MyComonent = class(TComponent)
     private
       FProp1 : Integer;
       FProp2: Integer;
       procedure SetProp1(Value: Integer);
       procedure SetProp2(Value: Integer);
    published
       property Prop1 : integer
                     read FProp1
                     write SetProp1;

      property Prop2: integer
                    read FProp2
                    write SetProp2;
end;

procedure MyComponent.SetProp1(Value: Integer);
begin
 FProp1 := Value;
end;

procedure MyComponent.SetProp2(Value; Integer);
begin
 FProp2 := Value;
end;
Ok soweit ist das mit der Zuweisung auch kein Problem, aber was ist wenn ich den Wert von FProp2 bei der Zuweisung von Prop1 benötige,
sagen wir z.B. um zu FProp1 einen Fixwert zu addieren.

Ein Beispiel für den Setter von FPop1
Delphi-Quellcode:
procedure MyComponent.SetProp1(Value:Integer);
begin
 FProp1 := Value + FProp2;
end;
Da WriteComponentRes und das Read-Gegenstück die Arbeit iterativ vornehmen, habe ich mal die Reihenfolge der Property-Definitionen inerhalb der MyComponent-Klasse geändert und Prop2 vor Prop1 gesetzt also so als Beispielcode:
Delphi-Quellcode:
 property Prop2 : integer
                     read FProp2
                     write SetProp2;

 property Prop1: integer
                    read FProp1
                    write SetProp1;
und gehofft das die Serialisierung von prop2 vor prop1 stattfindet, dazu habe ich auch mal in der entsprechenden
*.dfm Datei nachgesehen und dort hat sich die Reihenfolge tatsächlich geändert, aber beim Laden wird immer der Setter von Pop1 zuerst
aufgerufen


Ich bin mit meinem Latein erstmal am Ende, oder ich sehe das Offensichtliche nicht?

Und an alle die es noch nicht wissen ->
Andreas
Gruß Andreas
---------------------------------------------------
Sic Luceat Lux (so lasse das Licht erstrahlen)
- ich kam sah und wusste nichts -
  Mit Zitat antworten Zitat
 


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 10:57 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