Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Property's "stored" bug... (https://www.delphipraxis.net/207257-propertys-stored-bug.html)

himitsu 8. Mär 2021 15:16

AW: Property's "stored" bug...
 
Zitat:

Delphi 1
Damals gab es noch keine Attribute, somit war es standtardmäßig garnicht möglich für Floats einen Default zu definieren.
Seit 12 Jahren ist es aber möglich, womit es keinen Grund mehr gibt, für so einen Bug.

Zitat:

Wenn da "stored False" ist, darf überhaupt nichts gespeichert werden.
Jupp, und auch andersrum, wenn es Stored True ist, dann muß gespeichert werden. (in diesem Fall darf so ein Default niemals diese Angabe überschreiben, was man auch schon seit Delphi 1 hätte reparieren können)

Stevie 8. Mär 2021 16:04

AW: Property's "stored" bug...
 
Zitat:

Zitat von himitsu (Beitrag 1484671)
Seit 12 Jahren ist es aber möglich, womit es keinen Grund mehr gibt, für so einen Bug.

Das ist kein Bug, das ist "Abwärtskompatibilität" :stupid:

Uwe Raabe 8. Mär 2021 16:21

AW: Property's "stored" bug...
 
Zitat:

Zitat von himitsu (Beitrag 1484659)
Aber gibt es überhaupt einen Default-Default?
Wenn kein Default angegeben wurde, was hier der Fall ist, dann ist es doch eigentlich ein "Fehler", wenn Delphi hier eigenmächtig "irgendeinen" einen Default verwendet.

Ja, gibt es. Ist auch dokumentiert:
Zitat:

Für Real-, Zeiger- und String-Typen gilt der implizite default-Wert 0 bzw. nil und '' (leerer String).

Uwe Raabe 8. Mär 2021 16:23

AW: Property's "stored" bug...
 
Zitat:

Zitat von himitsu (Beitrag 1484671)
Jupp, und auch andersrum, wenn es Stored True ist, dann muß gespeichert werden. (in diesem Fall darf so ein Default niemals diese Angabe überschreiben, was man auch schon seit Delphi 1 hätte reparieren können)

Es war vermutlich einfacher die Dokumentation anzupassen.

BigAl 8. Mär 2021 19:39

AW: Property's "stored" bug...
 
Liste der Anhänge anzeigen (Anzahl: 1)
Delphi tut sich ja generell schwer mit Float Properties. Beinhalten einen Property einen Float, dann wird das übergeordnet Property im Objektinspektor generell als "changed" angezeigt. Unabhängig ob tatsächlich was geändert wurde:

Anhang 53762

In dem Beispiel ist "AutoColorFactor" ein Single. Der Standardwert ist 1. TPointStyle sollte also nicht fett dargestellt werden...

Ich habe alle Eigenschaften meines aktuellen Projekts soweit möglich als Integer definiert. Auch wenn sie eigentlich als Floats sinnvoller wären. Das Projekt hat etwa 40 spezielle Klassen die von TPersistent abgeleitet und teilweise ziemlich verschachtelt sind. Des weiteren gibt es wieder Ableitungen von den Klassen die im Wesentlichen die Standardwerte neu definieren usw.. Irgendwann hatte ich die Faxen mit den Floats dann Dicke und habe vieles umgestellt. An allen Stellen ist das leider nicht so ohne Weiteres möglich...

Weitere Suchen im Internet haben ergeben, dass es sich tatsächlich um einen sehr alten Bug handelt (und ja, es ist definitiv ein Bug). Auch wenn dieser - wie schon geschrieben - seit langem existiert, sollte man mit diesem ja nicht in alle Ewigkeit leben müssen. Es handelt sich um ein bis zwei zentrale Stellen die korrigiert werden müssten. Bestehende Programm sollten damit eigentlich klarkommen. Embarcadero hat die letzten zwei Updates echt tolles abgeliefert (meine Meinung) und Delphi ist aktuell besser denn je. Es macht wieder richtig Spaß mit der IDE zu arbeiten...

In diesem Sinne

Alex


Alle Zeitangaben in WEZ +1. Es ist jetzt 22:31 Uhr.
Seite 2 von 2     12   

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz