hallo zusammen
ich habe folgendes problem:
da ich meinen code sehr kurz halten will, möchte ich eine prozedur für mehrere ereignisse haben. diese sollte folgendes machen:
ich habe mehrere radiogroup´s mit unterschiedlicher item-anzahl, beispielsweise eine mit 3 mit 4 und 5 items.
nun will ich je nachdem welches item ausgewählt wurde die anderen items der radiogroup deaktivieren. das ist ja auch nicht so schwer->
Delphi-Quellcode:
case radiogroup.ItemIndex of
0 : for i := 1 to radiogroup.Items.Count - 1 do
radiogroup.Controls[i].Enabled := false;
1 : for i := 0 to radiogroup.Items.Count - 1 do
if not(i = 1) then
radiogroup.Controls[i].Enabled := false;
2 : for i := 0 to radiogroup.Items.Count - 1 do
if not(i = 2) then
radiogroup.Controls[i].Enabled := false;
3 : for i := 0 to radiogroup.Items.Count - 1 do
if not(i = 3) then
radiogroup.Controls[i].Enabled := false;
4 : for i := 0 to radiogroup.Items.Count - 1 do
if not(i = 4) then
radiogroup.Controls[i].Enabled := false;
end;
nun meine frage:
kann ich eine case abfrage für alle radiogroups schreiben?
quasi so->
Delphi-Quellcode:
case radiogroup.ItemIndex of
0 : for i := 1 to radiogroup.Items.Count - 1 do
radiogroup.Controls[i].Enabled := false;
1 : for i := 0 to radiogroup.Items.Count - 1 do
if not(i = 1) then
radiogroup.Controls[i].Enabled := false;
2 : for i := 0 to radiogroup.Items.Count - 1 do
if not(i = 2) then
radiogroup.Controls[i].Enabled := false;
3 : for i := 0 to radiogroup.Items.Count - 1 do
if not(i = 3) then
radiogroup.Controls[i].Enabled := false;
4 : for i := 0 to radiogroup.Items.Count - 1 do
if not(i = 4) then
radiogroup.Controls[i].Enabled := false;
if radiogroup.Items.Count = 6 then
5 : for i := 0 to radiogroup.Items.Count - 1 do
if not(i = 5) then
radiogroup.Controls[i].Enabled := false;
if radiogroup.Items.Count = 7 then
6 : for i := 0 to radiogroup.Items.Count - 1 do
if not(i = 6) then
radiogroup.Controls[i].Enabled := false;
end;
ich weis das das nicht funzt aber so hab ich mir das gedacht