Boolesche Feldwerte und Kontrollfelder

Aus RAD Studio
Wechseln zu: Navigation, Suche

Nach oben zu Einen einzelnen Datensatz anzeigen


Vcl.DBCtrls.TDBCheckBox ist eine datensensitive Version der Komponente TCheckBox. Sie kann für die Anzeige und Bearbeitung der Werte in Booleschen Feldern einer Datenmenge herangezogen werden. Beispielsweise könnte ein Rechnungsformular ein Kontrollfeld enthalten, das im aktivierten Zustand signalisiert, dass der Kunde umsatzsteuerpflichtig ist, während der deaktivierte Zustand bedeutet, dass dies nicht der Fall ist. Die TDBCheckBox-Komponente steuert selbst, ob sie aktiviert oder deaktiviert ist.

Dazu wird der Feldinhalt mit dem Inhalt der Eigenschaften ValueChecked und ValueUnchecked miteinander verglichen. Bei diesem Vergleich gibt es immer nur eine Übereinstimmung. Stimmt der Wert der Eigenschaft ValueChecked mit dem Wert des Feldes überein, wird das Kontrollfeld aktiviert. Wenn dagegen der Wert der Eigenschaft ValueUnchecked mit dem Wert des Feldes übereinstimmt, wird das Kontrollfeld deaktiviert.

Hinweis:  Die Werte von ValueChecked und ValueUnchecked dürfen nicht identisch sein.

Belegen Sie die Eigenschaft ValueChecked mit einem Wert, der in die Datenbank eingetragen werden soll, wenn das Steuerelement beim Wechsel des Benutzers zu einem anderen Datensatz aktiviert ist. Dieser Wert ist per Voreinstellung True. Sie können aber jeden beliebigen alphanumerischen Wert angeben. Es ist auch möglich, eine Liste mit Einträgen, die durch Semikola voneinander getrennt sind, als Wert für ValueChecked einzugeben. Wenn einer der Einträge mit dem Inhalt des Feldes im aktuellen Datensatz übereinstimmt, wird das Kontrollfeld aktiviert. So ließe sich beispielsweise der folgende String für ValueChecked verwenden:

 DBCheckBox1.ValueChecked := 'True;Yes;On';

Enthält das Feld des aktuellen Datensatzes einen der Werte "True", "Yes" oder "On", wird das Kontrollfeld aktiviert. Beim Vergleich des Feldes mit den Strings von ValueChecked wird die Groß-/Kleinschreibung berücksichtigt. Wenn ein Benutzer ein Kontrollfeld aktiviert, für das mehrere ValueChecked-Strings definiert sind, wird der erste String als Wert in die Datenbank eingetragen.

Belegen Sie die Eigenschaft ValueUnchecked mit einem Wert, der in die Datenbank eingetragen werden soll, wenn das Steuerelement beim Wechsel des Benutzers zu einem anderen Datensatz nicht aktiviert ist. Dieser Wert ist per Voreinstellung auf False gesetzt. Sie können aber jeden beliebigen alphanumerischen Wert angeben. Es ist auch möglich, eine Liste mit Einträgen, die durch Semikola voneinander getrennt sind, als Wert für ValueUnchecked einzugeben. Wenn einer der Einträge mit dem Inhalt des Feldes im aktuellen Datensatz übereinstimmt, wird das Kontrollfeld deaktiviert.

Ein datensensitives Kontrollfeld wird deaktiviert, wenn das Feld des aktuellen Datensatzes keinen der Werte enthält, die in den Eigenschaften ValueChecked oder ValueUnchecked aufgeführt sind.

Ist das Kontrollfeld mit einem logischen Feld verknüpft, dann ist es immer aktiviert, wenn der Inhalt des Feldes True ist, und immer deaktiviert, wenn der Inhalt des Feldes False ist. In diesem Fall haben die Strings, die für die Eigenschaften ValueChecked und ValueUnchecked festgelegt wurden, keinen Einfluss.

Siehe auch