Einzelnen Beitrag anzeigen

Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.542 Beiträge
 
Delphi 11 Alexandria
 
#10

Re: 5 Checkboxen checken nicht richtig!!!

  Alt 25. Nov 2009, 14:13
Und noch 'ne Variante:
Delphi-Quellcode:
...
type
  TForm1 = class(TForm)
    CheckBox1: TCheckBox;
    CheckBox2: TCheckBox;
    CheckBox3: TCheckBox;
    CheckBox4: TCheckBox;
    CheckBox5: TCheckBox;
    procedure CheckBox5Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure CheckBox1Click(Sender: TObject);
  private
    { Private-Deklarationen }
    Boxes: array[0..3] of TCheckBox;
  public
    { Public-Deklarationen }
  end;

...

procedure TForm1.CheckBox1Click(Sender: TObject);
begin
  Checkbox5.Enabled := not (Checkbox1.Checked or
                            Checkbox2.Checked or
                            Checkbox3.Checked or
                            Checkbox4.Checked);
  if not Checkbox5.Enabled then
    Checkbox5.Checked := false;
end;

procedure TForm1.CheckBox5Click(Sender: TObject);
var i: integer;
begin
  for i := Low(Boxes) to High(Boxes) do
    begin
      Boxes[i].Enabled := not Checkbox5.checked;
      if not Boxes[i].Enabled then
        Boxes[i].Checked := false;
    end;
end;

procedure TForm1.FormCreate(Sender: TObject);
var i: integer;
begin
  Boxes[0] := Checkbox1;
  Boxes[1] := Checkbox2;
  Boxes[2] := Checkbox3;
  Boxes[3] := Checkbox4;
  for i := Low(Boxes) to High(Boxes) do
    Boxes[i].OnClick := CheckBox1Click;
end;
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat