Freigeben über


AddProperty-Methode

Fügt einem Objekt eine neue Eigenschaft hinzu.

Object.AddProperty(cPropertyName [, eNewValue])

Rückgabewerte

Logisch

Parameter

  • cPropertyName
    Spezifiziert den Namen der neuen Eigenschaft, die dem Objekt hinzugefügt werden soll.
  • eNewValue
    Spezifiziert den Wert, auf den die neue Eigenschaft gesetzt werden soll. Ist eNewValue nicht angegeben, bleibt der Wert der neuen Eigenschaft unverändert, wenn die Eigenschaft bereits vorhanden ist, bzw. wird auf Falsch (.F.) gesetzt, wenn es sich um eine neue Eigenschaft handelt.

Hinweise

Mit Hilfe der AddProperty( )-Methode können Sie einem Objekt zur Laufzeit eine Eigenschaft hinzuzufügen. Die neue Eigenschaft wird als PUBLIC-Eigenschaft hinzugefügt.

Sie können auch Eigenschaftsarrays für ein Objekt erzeugen. Jedes im Eigenschaftsarray enthaltene Element wird mit eNewValue initialisiert, sofern es bereits vorhanden ist. Andernfalls enthält jedes Eigenschaftsarrayelement den Wert Falsch (.F.). Der folgende Code zeigt, wie Sie ein Eigenschaftsarray für ein Objekt erstellen:

oMyForm = CREATEOBJECT('Form')
oMyForm.AddProperty('MyArray(2)', 1)  && Add an array as a property
oMyForm.MyArray(2) = 'Two'
CLEAR
? oMyForm.MyArray(1)  && Displays 1
? oMyForm.MyArray(2)  && Displays Two

Ist keine Eigenschaft mit dem von Ihnen angegebenen Namen vorhanden, wird die Eigenschaft erstellt und der logische Wert Wahr (.T.) zurückgegeben.

Ist bereits eine Eigenschaft mit dem von Ihnen angegebenen Namen vorhanden, gibt AddProperty( ) Folgendes zurück:

  • Wahr (.T.), sofern es sich bei der neuen Eigenschaft um eine Arrayeigenschaft handelt und die bereits vorhandene Eigenschaft ebenfalls eine Arrayeigenschaft ist. Die Größe des Arrays wird neu definiert, so dass sie der des neuen Arrays entspricht. Wird für eNewValue ein Wert ** angegeben, werden alle Elemente in diesem Array auf diesen Wert gesetzt. Wird für eNewValue kein Wert angegeben, werden alle Arrayelemente auf Falsch (.F.) gesetzt.
  • Wahr (.T.), wenn es sich bei der neuen Eigenschaft um keine Arrayeigenschaft handelt, die vorhandene Eigenschaft jedoch eine Arrayeigenschaft ist. Die Eigenschaft bleibt auch weiterhin eine Arrayeigenschaft. Wird für eNewValue ein Wert ** angegeben, werden alle Elemente in diesem Array auf diesen Wert gesetzt. Wird für eNewValue kein Wert angegeben, bleiben die Arrayelemente unverändert.
  • Wahr (.T.), sofern es sich bei der neuen Eigenschaft um keine Arrayeigenschaft handelt und die vorhandene Eigenschaft ebenfalls keine Arrayeigenschaft ist oder wenn es sich bei dieser um keine schreibgeschützte systemeigene Visual FoxPro-Eigenschaft handelt. Wird für eNewValue ein Wert ** angegeben, wird die vorhandene Eigenschaft auf diesen Wert gesetzt. Wird für eNewValue kein Wert angegeben, bleibt der Wert der vorhandenen Eigenschaft unverändert.
  • Falsch (.F.), sofern es sich bei der neuen Eigenschaft um eine Arrayeigenschaft handelt und die vorhandene Eigenschaft keine Arrayeigenschaft ist. Die vorhandene Eigenschaft bleibt unverändert.
  • Der Fehler Eigenschaft <EigenschaftName> ist schreibgeschützt wird generiert, wenn die vorhandene Eigenschaft eine schreibgeschützte systemeigene Visual-FoxPro-Eigenschaft ist, z. B. die BaseClass-Eigenschaft.
  • Der Fehler Falscher Eigenschaftsname wird generiert, wenn der Eigenschaftsname ungültig ist (wenn z. B. der Eigenschaftsname ein Leerzeichen oder andere unzulässige Zeichen enthält).

Siehe auch

DEFINE CLASS | NewObject-Methode | SaveAs-Methode | SaveAsClass-Methode

Betrifft: ActiveDoc-Objekt | Kontrollkästchen-Steuerelement (CheckBox) | Spaltenobjekt | Kombinationsfeld-Steuerelement (ComboBox) | Befehlsschaltfläche-Steuerelement (CommandButton) | Schaltflächengruppe-Steuerelement (CommandGroup) | Container-Objekt | Control-Objekt | Cursor-Objekt | Custom-Objekt | Datenumgebungsobjekt (DataEnvironment) | Bearbeitungsfeld-Steuerelement (EditBox) | Formularobjekt (Form) | Formularsatz-Objekt (FormSet) | Datenraster-Steuerelement (Grid) | Header-Objekt | Bild-Steuerelement | Bezeichnungs-Steuerelement | Linien-Steuerelement (Line) | Listenfeld-Steuerelement (ListBox) | Gebundenes OLE-Steuerelement | OLE-Container-Steuerelement | Optionsfeld-Steuerelement (OptionButton) | Optionsgruppen-Steuerelement (OptionGroup) | Seitenobjekt (Page) | Seitenrahmen-Steuerelement (PageFrame) | ProjectHook-Objekt | Beziehungsobjekt (Relation) | _SCREEN-Systemvariable | Zwischenraum-Objekt | Sitzungsobjekt | Form-Steuerelement | Drehfeld-Steuerelement (Spinner) | Textfeld-Steuerelement (TextBox) | Zeitgeber-Steuerelement (Timer) | Symbolleisten-Objekt