Freigeben über


THIS-Objektverweis

Stellt einen Verweis auf das aktuelle Objekt in Ereigniscode oder in einer Klassendefinition zur Verfügung.

THIS.PropertyName | ObjectName

Parameter

  • PropertyName
    Gibt den Namen der Eigenschaft an, die für das Objekt gesetzt oder geholt werden soll.
  • ObjectName
    Gibt ein Objekt in der Klasse an.

Hinweise

THIS ermöglicht Ihnen, auf einfache Weise einen Verweis auf ein aktuelles Objekt zu erstellen, wenn Sie Ereignis verarbeitende Programme in einem Formular schreiben. Beispielsweise kann im Click-Ereignis einer Befehlsschaltfläche die Beschriftung der Fläche auf die aktuelle Zeit gesetzt werden.

this.caption = time()

THIS zu verwenden, statt ausdrücklich über den Namen (z. B. thisform.command1.caption) auf das aktuelle Objekt zu verweisen, macht Programmcode zwischen Objekten portabel, da der Objektname nicht genannt wird und die übergeordnete Klasse des Objekts automatisch verkapselt wird.

THIS ermöglicht es Ihnen ebenfalls, auf eine Eigenschaft oder ein Objekt in einer Klassendefinition zu verweisen. Methoden in einem Klassendefinitionsblock können mit THIS eine Eigenschaft oder ein Objekt angeben, das vorhanden ist, wenn die Klasse erzeugt wird.

Da mehrere Instanzen von Objekten denselben Methodencode teilen, verweist THIS immer auf die Instanz, in der der Code läuft. Sind mehrere Instanzen eines Objekts vorhanden und wird eine der Objektmethoden aufgerufen, so verweist THIS auf das richtige Objekt.

Beispiel

Das folgende Beispiel erzeugt die Unterklasse MyForm, die auf der Formularklasse basiert. Die ChangeBackColor-Methode wird erzeugt. ChangeBackColor verwendet THIS, um auf MyForm zu verweisen.

DEFINE CLASS MyForm AS FORM
 CAPTION = "This Form"
 HEIGHT = 15
 WIDTH = 20

 PROCEDURE ChangeBackColor
 PARAMETER NewColor
  THIS.BACKCOLOR = NewColor
 ENDPROC
ENDDEFINE

Siehe auch

THISFORM | THISFORMSET | BackColor-, ForeColor-Eigenschaften | DEFINE CLASS-Befehl