Delphi-PRAXiS
Seite 1 von 2  1 2      

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/)
-   -   Delphi property string default Wert ? (https://www.delphipraxis.net/29691-property-string-default-wert.html)

Tau 13. Sep 2004 10:27


property string default Wert ?
 
Hallo Leute

habe auch wieder inmal ein Problem

bin gerade an einer neuen Komponente dran und würde etwas unterstüzung brauchen.

Für property giebt es die möglichkeit einen Default Wert zu hinterlegen

Beispiel Integer:
Delphi-Quellcode:
property ZFieldID: Integer read FZFieldID write FZFieldID default 0;
Jezt meine Frage wie kann ich eine Default Wert für ein String Property angeben? :wall:

Für eure hilfe währe ich sehr Dankbar.

Tau

Sharky 13. Sep 2004 10:32

Re: property string default Wert ?
 
Hai Tau,

Defaultwerte müssen Ordinaletypen oder Pointer sein. Ein String wird also nicht gehen.

himitsu 13. Sep 2004 10:56

Re: property string default Wert ?
 
Seit wann das? @Sharky

Zitat:

Zitat von Meine OH
Nach default muss eine Konstante angegeben werden, die denselben Datentyp wie die Eigenschaft hat:

und da steht nichts von Ordinal.
Ich hab es zwar noch nicht bei Property's probiert, aber bei Var/Const geht es doch auch und es steht nirgends was davon, das Property da eine Ausnahme macht :gruebel:

Tau 13. Sep 2004 10:56

Re: property string default Wert ?
 
Hallo Sharky

OK aber wie kann ich jetz das Problem lösen? :gruebel:

Sprint 13. Sep 2004 11:05

Re: property string default Wert ?
 
Delphi-Quellcode:
type
  TMyClass= class(TObject)
  private
    FMyString: String;
  public
    constructor Create;
  published
    property MyString: String read FMyString write FMyString;
  end;
Delphi-Quellcode:
constructor TMyClass.Create;
begin
  inherited Create;
  FMyString := 'Mein Standardwert';
end;

Sharky 13. Sep 2004 11:05

Re: property string default Wert ?
 
Zitat:

Zitat von himitsu
Seit wann das? ...

Seit mir mein Compiler das beim testen sagte ;-)

Und
Zitat:

Zitat von F1-Taste
Mithilfe des Bezeichners nodefault kann ein geerbter default-Wert ohne Angabe eines neues Wertes außer Kraft gesetzt werden. default und nodefault werden nur für Ordinal- und Mengentypen unterstützt, bei denen die Ober- und Untergrenze des Basistyps einen Ordinalwert zwischen 0 und 31 hat. Enthält eine Eigenschaftsdeklaration weder default noch nodefault, gilt sie als mit nodefault definiert. Für Real-, Zeiger- und String-Typen gilt der implizite default-Wert 0 bzw. nil und '' (leerer String).


himitsu 13. Sep 2004 11:20

Re: property string default Wert ?
 
Na das können wir doch leiden ... wer hat'n sich sowas ausgedacht -.-

Also dann sollte wohl Sprint's Idee nicht schlecht sein ^^

Tau 13. Sep 2004 11:42

Re: property string default Wert ?
 
Hallo Sprint

danke für die schnelle Antwort.
Aber ich bekomme

1 Warnung und 1 Fehlermeldung

Warnung
Methode 'Create' verbirgt virtuelle Methoden vom Basistyp 'TADOQuery'

Fehler
Nicht genügend wirkliche Parameter bei inherited Create;

Gruss
Tau

himitsu 13. Sep 2004 12:26

Re: property string default Wert ?
 
Zur Warnung kann ich jetzt nichts sagen, aber schau dir mal Create deiner geerbten Methode an.
Ich vermute mal das "alte" Create möchte irgendwelche Parameter, die du wohl bei Inherite übergeben mußt.

SirThornberry 13. Sep 2004 12:50

Re: property string default Wert ?
 
du musst dem "inherited Create" noch den Owner übergeben und vermutlich hast du das "override" vergessen wenn die Fehlermeldung kommt das der neue Constructor den alten verbirgt


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:55 Uhr.
Seite 1 von 2  1 2      

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