Cargo: Unterschied zwischen den Versionen

Aus Wiki des Deutschsprachige Xbaseentwickler e. V.
Zur Navigation springen Zur Suche springen
(Die Seite wurde neu angelegt: „ == Ein Universalwerkzeug == Jedes Objekt in Xbase verfügt über eine Instanzvariable :cargo. Diese Instanzvariable hat in Xbase keine spezifische Funktion,…“)
(kein Unterschied)

Version vom 28. Juni 2013, 12:18 Uhr

Ein Universalwerkzeug

Jedes Objekt in Xbase verfügt über eine Instanzvariable :cargo.

Diese Instanzvariable hat in Xbase keine spezifische Funktion, sondern steht dem Programmierer zur exklusiven Nutzung zur Verfügung.

Wenn objekt-spezifisch Informationen hinterlegt werden müssen, so geht dies entweder, indem :cargo zur Speicherung verwendet wird, oder indem eine eigene Klasse abgeleitet wird, in der entsprechende Instanzvariablen definiert werden, in der diese Daten hinterlegt werden können.

Die Implementierung einer eigenen Klasse ist normalerweise der Weg, der zu bevorzugen ist.

Die Verwendung von :cargo erlaubt es, dies auf "auf die Schnelle" (quick and dirty) zu implementieren.

oXbp := XbpSLE():new(oDlg, oDlg, aPos, aSize)
oXbp:dataLink := {|x| IIf(x == NIL, cName, cName := x)}
oXbp:cargo := {"cName", cName}
...
oXbp:create()

Auf diesem Weg kann man in :cargo den Namen der bezogenen Variablen, sowie ihren Wert zum Beginn des Editier-Vorgangs hinterlegen.


(artikelinarbeit)