Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.071 Beiträge
 
Delphi 12 Athens
 
#4

AW: Komponenten -- Eigenschaften entfernen

  Alt 29. Jul 2022, 17:47
nil: richtig erinnert

aber ich bin mir nicht sicher, ob es dort (RegisterPropertyEditor) war.


Diesen Trick "etwas auf nil setzen", gab es dafür, um ein Property unsichtbar zu machen, so dass es m OI nicht mehr angezeigt wird (kein Editor = keine Anzeige),

aber sowas gab es auch, um einen "eigenen" Property-Editor zu entfernen und wieder den Standardeditor anzuzeigen.



Ich glaube Erstes war hier richtig, also würde passen.


Die Auswahl kann man hier weniger einschränken.
Zitat:
RegisterPropertyEditor(nil, TBrush, 'Color', NIL);
Name und Klasse wären schon eindeutig und der Typ ist nicht mehr unbedingt nötig. (falsch wäre es damit aber auch nicht)


Aber es würde so oder so "alle" TBrush erwischen, von anderen Komponenten.
Wie gerade nachfogend es jemand erklärte, wird das so also doch nichts.

Du müsstest deine komponente ableiten,
auch TBrush ableiten und dann in deiner Komponente deinen TMyBrush haben, in welchem das Color nicht published ist, bzw. wo der PropertyEditor entfernt wird.

Was aber geht, ist das ganze Brush auszublenden (nicht published, bzw. kein PropertyEditor) oder es auf stored False zu setzen
und dafür dann eigene Property, als Weiterleitung zu den Eigenschaften des Brush, welche du speichern willst.


[edit]
Ja, natürlich wäre es einfacher, das Property garnicht erst in der Klasse zu haben. (nicht "published", siehe nachfolgend)
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.

Geändert von himitsu (29. Jul 2022 um 18:01 Uhr)
  Mit Zitat antworten Zitat