Einzelnen Beitrag anzeigen

sonicfire

Registriert seit: 17. Jan 2006
Ort: Berlin
58 Beiträge
 
#1

Checkboxen machen mich wahnsinnig!

  Alt 17. Aug 2006, 14:17
Servus und Hallo!

Schon wieder ein Problemchen *seufz*.

Wie erkläre ich es am besten ... nun...

Ich habe ein Fenster mit 16 Checkboxen und TEdit-Feldern. Beim Start des Programmes ist in diesem Fenster nur die erste(!) Checkbox markiert bzw. gewählt (checked). Die erste Checkbox ist grundsätzlich checked UND disabled. (enabled := false). Alle anderen CheckBoxen (2 - 16) sind per Default nicht checked aber alle enabled.

Wenn ich nun z.b. auf die 10te CheckBox klicke - so soll diese Checked sein UND gleichzeitig auch Enabled. (Geht.)
Und: Von der zweiten bis zur neunten Checkbox soll jeweils Enabled := False UND gleichzeitig checked gesetzt sein. (Geht ebenfalls).

Nun aber zum Problem. Wenn ich jetzt WIEDER auf diese 10te Checkbox klicke, soll das Häkchen weggehen (tut es ja auch so oder so) aber gleichezeitig sollen alle bis dahin marktierten Checkboxen (2 - 9) wieder "Enabled := True" und "Checked := False" sein - und genau da haut es nicht hin und ich weiss nicht wieso ...

Ich habe es mit einem Array of TCheckBox versucht und mit folgendem:
Delphi-Quellcode:
If (Sender is TCheckBox) then
begin
    begin
    if VeloLayers = (Sender as TCheckBox).Tag then
    begin
        For i:=1 to VeloLayers-1 do
        begin
           BoxToCheck[i].Enabled := True;
           BoxToCheck[i].Checked := False;
        end
    end
    else
    begin
        For i:=1 to ((Sender as TCheckBox).Tag-1) do
        begin
            BoxToCheck[i].Enabled := False;
            BoxToCheck[i].Checked := True;
        end;
        VeloLayers := (Sender as TCheckBox).Tag;
        end;
    end;
    end;
end;
In die jeweiligen CheckBoxen habe ich der Reihenfolge nach korrekte Tag-Werte geschrieben, eben einfach 1 bis 16...

Ich weiss einfach nicht, wieso er dann nur zum TEIL die Checkboxen wieder auf "NICHT checked" setzt. Das sieht fast so aus als würde er immer Zweiersprünge machen. Das ist zum Haareraufen!
Miniaturansicht angehängter Grafiken
shot1_101.jpg  
  Mit Zitat antworten Zitat