Die CpRadiobuttonField Klasse ist von der CpField Klasse abgeleitet. Sie implementiert eine Reihe von Radiobuttos.
Ein Objekt der Klasse CpRadiobuttonField wird mit der Funktion AddRadiobuttonField() erzeugt und einem ControlPanel zugewiesen.
}
Ein RadiobuttonField stellt eine Reihe von Radiobuttons dar, welche mit einer globalen Variablen oder einem Modell-Property verknüpft sind. Der Wert dieser Variablen oder dieses Properties kann über die Radiobuttons ausgelesen und verändert werden.
Einige der Properties und Funktionen des Radiobutton-Feldes werden von seiner Basis-Klasse, dem CpField, implementiert.
Panel | Verweis auf das übergeordnete ControlPanel Objekt. Das CpField Objekt wird in der Liste ControlPanel.Fields verlinkt. |
Name | Standardwert für Label und ValueRef |
Label | Label für das ControlPanel-Feld. Label dürfen HTML-Tags enthalten. |
ValueRef | Referenz auf eine globale Variable oder ein Objekt-Property. |
ReadOnly | true → Feld kann nicht verändert werden |
Enabled | false → Feld ist deaktiviert. Dieses Property kann nur mit der Funktion IsEnabled() abgefragt werden |
EnabledRef | Referenz auf ein Modell-Property, welches den Enabled-Zustand fernsteuert oder eine function, welche den enabled Zusatand berechnet. |
Description | wird eingeblendet, wenn die Maus über dem Label oder dem HelpImage steht |
Link | HTML- oder Wiki-Link zu einer Help-Seite mit der Beschreibung des Ein-/Ausgabefeldes. |
ColSpan | Anzahl Tabellen-Spalten, welche das Werte-Feld überspannen soll |
Attr | Zusätzliche HTML-Attribute für das Werte-Feld |
ValueType | Typ des Wertes von ValueRef: 'str', 'int', 'num', 'bool' |
Items | Ein CpRadiobuttonField fasst eine Reihe von Radiobuttons zusammen, welche in der Liste Items gespeichert werden. Items ist ein Array of CpRadiobuttonItem. |
AddRadiobuttonField() | Erzeugt ein CpRadiobuttonField und fügt es einem ControlPanel hinzu |
GetType() | Fragt den Typ des Feldes ab |
GetValueRef() | Gibt den String-Wert des ValueRef Properties zurück. Auf ValueRef darf nicht direkt zugegriffen werden. |
IsEnabled() | Gibt den Enabled-Zustand des Feldes zurück. Auf Enabled darf nicht direkt zugegriffen werden. |
SetEnabled() | Setzt den Enabled-Zustand des Feldes. |
GetHtmlID() | Gibt die HTML-ID eines ControlPanel-Feldes oder Items zurück |
GetDomObj() | Gibt eine Referenz auf das DOM-Element eines ControlPanel-Feldes oder Items zurück |
GetItem() | Sucht ein bestimmtes CpRadiobuttonItem in der Items Liste |
Jedes CpRadiobuttonField enthält im Property Items eine Liste von CpRadiobuttonItems.
}
Ein CpRadiobuttonItem definiert ein einzelnes Radiobutton-Element eines CpRadiobuttonField Objektes.
Name | Standardwert für Text und Value des CpRadiobuttonItem |
Text | Text der hinter dem Radiobutton-Element angezeigt werden soll |
Value | Wert des value Attributes des Radiobutton-Elementes |
ControlPanel.AddRadiobuttonField( Parameter )
}
}
CpRadiobuttonField.GetItem( ItemName )
Sucht in der Items Liste nach dem Radiobutton-Item mit dem Namen ItemName.
CpRadiobuttonField.ValueType: String; ReadOnly; Init = 'str'
Datentyp des mit ValueRef referenzierten Modell-Properties. Der in CpRadiobuttonItem.Value definierte Wert wird vor dem Steichern in diesen Datentyp konvertiert.
'str' → String (Standard) 'int' → Integer 'num' → Number 'bool' → Boolean
Das Argument Value sollte als String definiert werden. Wird ein Nicht-String angegeben, wird der Wert in einen String konvertiert.
CpRadiobuttonField.Items: Array of CpRadiobuttonItem; ReadOnly; Init = [ ]
Jedes CpRadiobuttonField besteht aus einer Liste von einzelnen Radiobutton-Elementen vom Typ CpRadiobuttonItem. Diese Elemente werden in der Liste Items verwaltet.
CpRadiobuttonItem.Name: String; ReadOnly; Init = CpField.Name + '-' + ItemIndex
Der Name eines Radiobutton-Elementes dient als Standardwert für Text und Value. Wird Name nicht angegeben, wird er mit CpField.Name plus dem Index des Radiobutton-Elementes in der Items Liste, mit einem Bindestrich dazwischen, initialisiert. Die HTML-ID ist gleich diesem Namen, siehe GetHtmlID().
CpRadiobuttonItem.Text: String; ReadOnly; Init = CpRadiobuttonItem.Name
Text, der hinter dem Radiobutton-Element angezeigt werden soll.
Pro CpRadiobuttonField müssen mehrere Radiobuttons definiert werden, die zu einer Gruppe mit gemeinsamem Label zusammengefasst sind. Mit Text wird jeder Radiobutton beschriftet.
Ist Text nicht definiert, wird CpRadiobuttonItem.Name als Text verwendet.
Hinweis: Eine Reihe von Radiobutton-Elementen, welche in einem CpRadiobuttonField zusammengefasst sind, hat einen gemeinsamen Label. Jedes der Radiobutton-Elemente hat zudem eine eigene Beschriftung Text.
CpRadiobuttonItem.Value: String; ReadOnly; Init = CpRadiobuttonItem.Name
Die einzelnen Radiobuttons haben je ein Einput-Element mit einem Attribut value. Dieser Wert wird nach der Konvertierung in den Datentyp ValueType im mit ValueRef referenzierten Modell-Property gespeichert.
Wenn der Wert von Value kein String ist, wird er vor dem Zuweisen in einen String konvertiert. Beim Speichern von Value im Modell wird Value in der mit ValueType vorgegebenen Datentyp konvertiert.