AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein GUI-Design mit VCL / FireMonkey / Common Controls Sinnfrage "published property " in abgeleiteten Komponenten
Thema durchsuchen
Ansicht
Themen-Optionen

Sinnfrage "published property " in abgeleiteten Komponenten

Ein Thema von Net7 · begonnen am 30. Jan 2011 · letzter Beitrag vom 30. Jan 2011
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von Net7
Net7

Registriert seit: 22. Jun 2004
Ort: Lauenburg
161 Beiträge
 
Delphi 7 Professional
 
#1

Sinnfrage "published property " in abgeleiteten Komponenten

  Alt 30. Jan 2011, 15:27
Hallo Freunde,

irgendwie verstehe ich nicht den Hintergund in abgeleiteten Komponenten warum folgendes gemacht wird.

Code:
type

TIrgendEinEdit = class(TEinEdit) // kein TCustomEdit
published
    property Anchors;
    property AutoSelect;
    property AutoSize;
    property BiDiMode;
    property CharCase;
    property Color;
    // usw.
end;

TMyIrgendEinEdit = class(TIrgendEinEdit) // kein TCustomEdit
 published
    property Anchors;
    property AutoSelect;
    property AutoSize;
    property BiDiMode;
    property CharCase;
    property Color;
    // usw.
end;
Diese property sind doch eh öffentlich also warum werden sie in der Ableitung erneut published ?
Marko
So`ne Atombombe kann einem den ganzen Tag verderben!
Eine eigene DLL in C++ geschrieben wird meist ein Sklave für mein Delphi/Pascal.

Geändert von Net7 (30. Jan 2011 um 16:47 Uhr) Grund: zum besseren Verständnis
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.858 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: Sinnfrage "published property " in abgeleiteten Komponenten

  Alt 30. Jan 2011, 15:35
Bei der Vererbung wird deren Sichtbarkeit auf public niedrigt. So werden dann die gewünschten wieder sichtbar gemacht
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

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

AW: Sinnfrage "published property " in abgeleiteten Komponenten

  Alt 30. Jan 2011, 15:38
In der Basisklasse sind diese Property noch versteckt.
Hier wurden sie nun für die Verwendung nach Published verschoben und werden dadurch im OI sichtbar/nutzbar.

Der Grund ist einfach, daß man nun von der Basisklasse etwas ableiten kann und dabei die Kontrolle behält, was man in seiner Komponente anzeigen möchte, denn nachträglich verstecken geht schlecht, wenn etwas schonmal sichtbar war.

[edit]
Zitat:
kein TCustomEdit
hmmm, vielleicht hatte man mal von TCustomEdit abgeleitet?
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat
Benutzerbild von Net7
Net7

Registriert seit: 22. Jun 2004
Ort: Lauenburg
161 Beiträge
 
Delphi 7 Professional
 
#4

AW: Sinnfrage "published property " in abgeleiteten Komponenten

  Alt 30. Jan 2011, 15:53
kein TCustomEdit
hmmm, vielleicht hatte man mal von TCustomEdit abgeleitet?
War nur ein Beispiel, von Custom deshalb nicht da die Ableitung bereits Erweiterungen enthält.

In der Basisklasse sind diese Property eben nicht versteckt sondern sind bereits published, deswegen frage ich ja nach dem Sinn.

Bei der Vererbung wird deren Sichtbarkeit auf public niedrigt. So werden dann die gewünschten wieder sichtbar gemacht
Hmm... ist das irgendwo dokumentiert, denn wenn ich von der Basisklasse ableite ohne das ich erneut die Property published deklariere sind diese trotzdem published und weiterhin im OI sichtbar.
Marko
So`ne Atombombe kann einem den ganzen Tag verderben!
Eine eigene DLL in C++ geschrieben wird meist ein Sklave für mein Delphi/Pascal.
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

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

AW: Sinnfrage "published property " in abgeleiteten Komponenten

  Alt 30. Jan 2011, 15:56
Nja, schaden kann es nicht, aber wenn es vorher schon sichtbar war, dann änderst sich ja nichts ... ist dann praktisch umsonst.

Wenn das Licht an ist und ich es nochmal anschalte, dann bleibt es ja an und wird nicht anner.
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat
Benutzerbild von Net7
Net7

Registriert seit: 22. Jun 2004
Ort: Lauenburg
161 Beiträge
 
Delphi 7 Professional
 
#6

AW: Sinnfrage "published property " in abgeleiteten Komponenten

  Alt 30. Jan 2011, 16:44
Nja, schaden kann es nicht, aber wenn es vorher schon sichtbar war, dann änderst sich ja nichts ... ist dann praktisch umsonst.

Wenn das Licht an ist und ich es nochmal anschalte, dann bleibt es ja an und wird nicht anner.

Ok, damit hat sich meine Frage also beantwortet. Es ist also Sinnlos, komisch finde ich nur das sich die Programmierer, auch bei kommerziellen Komponenten die Zeit nehmen, diese Sinnlosikeit fortzuführen.

Danke
Marko
So`ne Atombombe kann einem den ganzen Tag verderben!
Eine eigene DLL in C++ geschrieben wird meist ein Sklave für mein Delphi/Pascal.
  Mit Zitat antworten Zitat
alzaimar
(Moderator)

Registriert seit: 6. Mai 2005
Ort: Berlin
4.956 Beiträge
 
Delphi 2007 Enterprise
 
#7

AW: Sinnfrage "published property " in abgeleiteten Komponenten

  Alt 30. Jan 2011, 17:09
...Es ist also Sinnlos, komisch finde ich nur das sich die Programmierer, auch bei kommerziellen Komponenten die Zeit nehmen, diese Sinnlosikeit fortzuführen.
Aus Dokumentationszwecken?
"Wenn ist das Nunstruck git und Slotermeyer? Ja! Beiherhund das Oder die Flipperwaldt gersput!"
(Monty Python "Joke Warefare")
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.453 Beiträge
 
Delphi 12 Athens
 
#8

AW: Sinnfrage "published property " in abgeleiteten Komponenten

  Alt 30. Jan 2011, 17:17
Manchmal ist auch die Reihenfolge der published Properties entscheidend, da dadurch die Reihenfolge des Schreibens in einen Stream (z.B. DFM) und folglich auch das nachfolgende Lesen beeinflusst wird. Manche Properties dürfen erst gelesen werden, wenn andere bereits gesetzt sind. Das kann man damit erreichen.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Benutzerbild von Net7
Net7

Registriert seit: 22. Jun 2004
Ort: Lauenburg
161 Beiträge
 
Delphi 7 Professional
 
#9

AW: Sinnfrage "published property " in abgeleiteten Komponenten

  Alt 30. Jan 2011, 17:20
...Es ist also Sinnlos, komisch finde ich nur das sich die Programmierer, auch bei kommerziellen Komponenten die Zeit nehmen, diese Sinnlosikeit fortzuführen.
Aus Dokumentationszwecken?
Nun bin ich verwirrt, man schreibt zusätzlich Quelltext um zu dokumentieren ??
Marko
So`ne Atombombe kann einem den ganzen Tag verderben!
Eine eigene DLL in C++ geschrieben wird meist ein Sklave für mein Delphi/Pascal.
  Mit Zitat antworten Zitat
Benutzerbild von Net7
Net7

Registriert seit: 22. Jun 2004
Ort: Lauenburg
161 Beiträge
 
Delphi 7 Professional
 
#10

AW: Sinnfrage "published property " in abgeleiteten Komponenten

  Alt 30. Jan 2011, 17:32
Manchmal ist auch die Reihenfolge der published Properties entscheidend, da dadurch die Reihenfolge des Schreibens in einen Stream (z.B. DFM) und folglich auch das nachfolgende Lesen beeinflusst wird. Manche Properties dürfen erst gelesen werden, wenn andere bereits gesetzt sind. Das kann man damit erreichen.
Ja, das macht Sinn.
Diese Möglichkeit habe ich noch garnicht in Betracht gezogen, folglich sollte man bei neuen Propertys beachten, ob man Daten von geerbten Propertys benötigt und die "published property" neu ordnen sollte.

Verstehe ich das richtig ?
Marko
So`ne Atombombe kann einem den ganzen Tag verderben!
Eine eigene DLL in C++ geschrieben wird meist ein Sklave für mein Delphi/Pascal.
  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 10:31 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