當有很多CheckBox的時候~~ |
答題得分者是:hagar
|
aresu
一般會員 ![]() ![]() 發表:14 回覆:14 積分:5 註冊:2004-07-13 發送簡訊給我 |
我原來的程式是
for i := 1 to Length(sChoose) -1 do
begin
if copy(sChoose, i, 1) = ',' then
begin
CheckBoxA.Checked := (copy(sChoose, i+1, 1) = 'A') or CheckBoxA.Checked;
CheckBoxB.Checked := (copy(sChoose, i+1, 1) = 'B') or CheckBoxB.Checked;
CheckBoxC.Checked := (copy(sChoose, i+1, 1) = 'C') or CheckBoxC.Checked;
CheckBoxD.Checked := (copy(sChoose, i+1, 1) = 'D') or CheckBoxD.Checked;
CheckBoxE.Checked := (copy(sChoose, i+1, 1) = 'E') or CheckBoxE.Checked;
CheckBoxF.Checked := (copy(sChoose, i+1, 1) = 'F') or CheckBoxF.Checked;
CheckBoxG.Checked := (copy(sChoose, i+1, 1) = 'G') or CheckBoxG.Checked;
CheckBoxH.Checked := (copy(sChoose, i+1, 1) = 'H') or CheckBoxH.Checked;
CheckBoxI.Checked := (copy(sChoose, i+1, 1) = 'I') or CheckBoxI.Checked;
CheckBoxJ.Checked := (copy(sChoose, i+1, 1) = 'J') or CheckBoxJ.Checked;
CheckBoxK.Checked := (copy(sChoose, i+1, 1) = 'K') or CheckBoxK.Checked;
CheckBoxL.Checked := (copy(sChoose, i+1, 1) = 'L') or CheckBoxL.Checked;
CheckBoxM.Checked := (copy(sChoose, i+1, 1) = 'M') or CheckBoxM.Checked;
CheckBoxN.Checked := (copy(sChoose, i+1, 1) = 'N') or CheckBoxN.Checked;
CheckBoxO.Checked := (copy(sChoose, i+1, 1) = 'O') or CheckBoxO.Checked;
CheckBoxP.Checked := (copy(sChoose, i+1, 1) = 'P') or CheckBoxP.Checked;
CheckBoxQ.Checked := (copy(sChoose, i+1, 1) = 'Q') or CheckBoxQ.Checked;
end;
end;
但我其實不想這樣做~~我希望能簡化程式~~不要每個CheckBox寫一行程式~~這邊有十七個CheckBox~~萬一以後有更多的話那豈不是昏倒~~所以請各位大大指教~~謝啦~~
|
hagar
版主 ![]() ![]() ![]() ![]() ![]() ![]() 發表:143 回覆:4056 積分:4445 註冊:2002-04-14 發送簡訊給我 |
您要的是這樣嗎?
var i,j: integer; CheckBoxArray: Array[1..17] of TCheckBox; begin for i := 1 to 17 do CheckBoxArray[i] := FindComponent('CheckBox' Chr(64 i)) as TCheckBox; for i := 1 to Length(sChoose) -1 do begin if Copy(sChoose, i, 1) = ',' then begin for j := 1 to 17 do CheckBoxArray[j].Checked := (Copy(sChoose, i 1, 1) = Chr(64 j)) or CheckBoxArray[j].Checked; end; end; end;-- 向 KTop 的弟兄們致敬! ![]() |
aresu
一般會員 ![]() ![]() 發表:14 回覆:14 積分:5 註冊:2004-07-13 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |