TCheckGroup/de
From Free Pascal wiki
Jump to navigationJump to search
│
Deutsch (de) │
English (en) │
suomi (fi) │
français (fr) │
日本語 (ja) │
русский (ru) │
中文(中国大陆) (zh_CN) │
Diese Seite erklärt, wie man die TCheckGroup Komponente verwendet. Auf etwas klicken bedeutet immer ein Linksklick, ein Rechtsklick wird explizit erwähnt.
Beschreibung
Eine Gruppe CheckBoxen, die der Benutzer anwählen kann. Die Komponente ist wie eine TGroupBox mit integrierten TCheckBoxen.
Verwendung
Um eine TCheckGroup auf einem Formular zu nutzen, kann man sie einfach auf der Komponentenpalette Standard auswählen und, mit einem Klick auf das Formular, platzieren.
Kleines Beispiel
Es wird die Hintergrundfarbe eines Formulars geändert. Diese Farbe wird per Addition der einzelnen Farbanteilen bestimmt:
- erstellen Sie eine neue Anwendung und platzieren Sie ein TCheckGroup auf Ihrem Formular
- ändern Sie im Objektinspektor die Eigenschaft Name von CheckGroup1 zu cgRed und Caption zu Red
- fügen Sie die Checkboxen für cgRed hinzu:
- wählen Sie im Objektinspektor die Eigenschaft Items von cgRed
- klicken Sie auf den Button [...], der Zeichenketteneditor öffnet sich
- schreiben Sie untereinander 1 2 4 8 16 32 64 128 und beenden Sie die Eingabe mit Button OK
- kopieren Sie diese TCheckGroup, indem Sie cgRed im Formular rechtsklicken und auf Kopieren klicken
- rechtsklicken Sie das Formular und klicken Sie auf Einfügen, die TCheckGroup mit dem Namen cgRed1 wird erstellt
- ändern Sie nun den Namen von cgRed1 zu cgGreen und Caption zu Green
- fügen Sie noch eine TCheckGroup ein und ändern Sie den Namen zu cgBlue und Caption zu Blue
- immer wenn eine CheckBox geklickt wird, soll sich die Farbe ändern:
- erstellen Sie den OnItemClick Eventhandler von cgRed, indem Sie im Objektinspektor unter Ereignisse den Button [...] neben dem Ereignis OnItemClick klicken
- wählen Sie für cgGreen und cgBlue ebenfalls diesen Eventhandler, indem Sie jeweils neben dem Ereignis OnItemClick in der ComboBox cgRedItemClick auswählen
- schreiben Sie folgenden Code in den Eventhandler:
procedure TForm1.cgRedItemClick(Sender: TObject; Index: integer);
var
i, c: Integer;
begin
c := $000000; // Ausgangsfarbe ist Schwarz
for i:=0 to 7 do begin // Frage Items 0..7 aller Checkgroups ab
if cgRed.Checked[i] then c := c + 1 shl i; // Rotanteil $000000..$0000FF
if cgGreen.Checked[i] then c := c + 1 shl (i + 8); // Grünanteil $000000..$00FF00
if cgBlue.Checked[i] then c := c + 1 shl (i + 16); // Blauanteil $000000..$FF0000
end;
Color := c;
end;
- starten Sie Ihre Anwendung, so könnte sie aussehen:
Siehe auch
Gehe zurück zu: LCL Components | — Komponente zuvor: TRadioGroup/de | Nächste Komponente: TPanel/de |