Programmieren mit dBASE PLUS: name

Aus Wikibooks


Diese Eigenschaft enthält den Namen, mit dem in einem Formular auf die Komponente Bezug genommen werden kann.

Eigenschaft von[Bearbeiten]

Alle Formularkomponenten haben diese Eigenschaft.

Beschreibung[Bearbeiten]

Die Eigenschaft name einer Komponente enthält den Namen der Formulareigenschaft, mit der auf die Komponente zugegriffen werden kann.

So wird beispielsweise im folgendem Programmcode durch Wählen eines Schalters ein anderer Schalter aktiviert:

function einSchalter_onClick( )

form.andererSchalter.visible = true

Im Event-Handler von einSchalter verweist form auf das übergeordnete Formular, und andererSchalter ist eine Eigenschaft des Formulars mit einem Objektverweis auf den Schalter andererSchalter.

Beim Erstellen des Formulars im Formular-Designer wurde der Eigenschaft name des PushButton-Objekts der Wert andererSchalter zugewiesen. Wenn das Formular in einer .WFM-Datei gespeichert ist, sieht der Code für die Schalter folgendermaßen aus:

this.andererSchalter = new PushButton(this)
with (this.andererSchalter)
  left = 10
  top = 0
  width = 8
endwith

Der Name der Schalter wird nicht der Eigenschaft name zugewiesen. Statt dessen wird ihr Name durch die Formulareigenschaft mit dem Objektverweis bestimmt. Dies gilt für alle Formularkomponenten mit der Eigenschaft name.

Um der Komponente in der .WFM-Datei einen anderen Namen zuzuweisen, ändern Sie den Namen der Eigenschaft in der ersten Zuweisung und in der nachfolgenden WITH-Anweisung.

Beim Lesen der Eigenschaft name einer Komponente wird der Name der Eigenschaft zurückgegeben, mit dem das parent-Objekt (das Formular, wenn sich die Komponente nicht in einem Container- oder NoteBook-Objekt befindet) der Komponente auf das Steuerelement Bezug nimmt. Der Name wird immer in Goßbuchstaben zurückgegeben.

Wenn Sie der Eigenschaft name einen Wert zuweisen, ändern Sie in Wirklichkeit den Namen der Formulareigenschaft, die den Objektverweis der Komponente enthält. Obwohl dieses Vorgehen zulässig ist, sollten Sie es besser vermeiden.