Zum Hauptinhalt springen

Ermitteln und Setzen von Eigenschaften

Ermitteln und Setzen von Eigenschaften Aufteilung der Eigenschaften in Gruppen

Die Eigenschaften sind in vier Gruppen aufgeteilt:

  • **** Eigenschaften von Oberflächen-Objekten
  • **** Eigenschaften von Druck-Objekten
  • **** Eigenschaften von System-Objekten
  • **** Eigenschaften des Benutzersystems

Jede Gruppe besitzt ihre eigenen Befehle Win-, Prt-, Sys- und UrmPropGet/Set mit denen die Eigenschaft ausgelesen bzw. gesetzt werden kann. Das Ansprechen von Eigenschaften in Prozeduren funktioniert prinzipiell wie zur Entwurfszeit im Designer. Ist der Name der Eigenschaft bekannt, kann durch eine Objektreferenz und dem Namen der Eigenschaft, die Eigenschaft bei dem Objekt verändern oder auslesen.

Der Name der Eigenschaft wird für den Zugriff je nach Gruppe um _WinProp, _PrtProp oder _SysProp erweitert. Die Eigenschaften von Benutzer-Objekten können nur über die _UrmProp-Konstanten angesprochen werden.

Beispiele:

Setzen der Eigenschaft Caption bei einem Oberflächen-Objekt:

tErg # tHdlFrame->WinPropSet(_WinPropCaption, 'Suchen');

Setzen der Eigenschaft Caption bei einem Druck-Objekt:

tErg # tObjPrtText->PrtPropSet(_PrtPropCaption, 'Suchen');

Auslesen des temporären Pfades des Betriebssystems aus dem _Sys-Objekt:

tErg # _Sys->SysPropGet(_SysPropTempPath, tTemp);

Auslesen des Namens eines Benutzers:

tErg # tHdlUser->UrmPropGet(_UrmPropLastname, tRealLastName);

In den Beispielen wird der logische Rückgabewert der Befehle nicht ausgewertet. Über diesen Rückgabewert kann festgestellt werden, ob das Lesen oder Setzen einer Eigenschaft erfolgreich war.

Zum Setzen und Lesen von Eigenschaften gibt es noch eine kürzere schreibweise. In dieser Schreibweise wird vor dem Namen der Eigenschaft eines der Kürzel wp, pp oder sp gesetzt, um zu kennzeichnen, ob es sich um eine Oberflächen-, Druck-, oder System-Eigenschaft handelt. Ein Kürzel für Eigenschaften des Benutzersystems existiert nicht. Die oben angeführten Beispiele können auch wie folgt geschrieben werden:

tHdlFrame->wpCaption   # 'Suchen'; 
tObjPrtText->ppCaption # 'Suchen';
tTemp # _Sys->spTempPath;

Diese Anweisungen geben keinen Rückgabewert zurück, der den Erfolg der Operation darstellt. Kann eine Eigenschaft nicht gesetzt oder gelesen werden, erfolgt ein entsprechender Laufzeitfehler.

Die Befehle sollten immer dann verwendet werden, wenn das Vorhandensein einer Eigenschaft zu einem Objekt nicht sichergestellt ist. Zum Beispiel in einer Funktion, die ein Objekt übergeben bekommt. In den anderen Fällen kann die kurze Schreibweise verwendet werden.