CheckBox的全选与全不选

Description of your first forum.

CheckBox的全选与全不选

帖子janeyre-na » 星期一, 2005年5月16日 10:34


我在PageControl的某一页放置了若干个CheckBox
另放置一个CheckBox(假设为CheckBox20),caption为“全选/全不选”
则CheckBox20的Onclick事件怎么写?
要求简洁,而不是:
if checkbox20.checked=false then
然后写19行  checkbox.checked=false;
谢谢
 
 
 

CheckBox的全选与全不选

帖子xianguo » 星期一, 2005年5月16日 10:43


遍历PageControl中的TCheckBox组件
 
 
 

CheckBox的全选与全不选

帖子xianguo » 星期一, 2005年5月16日 11:02


procedure TForm1.Button1Click(Sender: TObject);
Var
 i : Integer;
begin
 for i:=0 To TabSheet1.ControlCount-1 Do
 begin
   if (TabSheet1.Controls[i] Is TCheckBox) Then
      (TabSheet1.Controls[i] AS TCheckBox).Checked := True;
 end;
end;
 
 
 

CheckBox的全选与全不选

帖子oiwin » 星期一, 2005年5月16日 12:59


楼上兄弟们说得对,如果你的CheckBox名字是从CheckBox1到CheckBox20,你也可以这样做
procedure TForm1.checkall(value: Boolean);
var i: Byte;
begin
 for i := 1 to 20 do
   (FindComponent('CheckBox' + IntToStr (i)) as TCheckBox).Checked := True;
end;

全选
checkall(true);
全不选
checkall(false);
 
 
 

CheckBox的全选与全不选

帖子plzw » 星期一, 2005年5月16日 14:48


楼上有个小小的笔误,被我发现了,呵呵
>(FindComponent('CheckBox' + IntToStr (i)) as TCheckBox).Checked := True;
应该为
(FindComponent('CheckBox' + IntToStr(i)) as TCheckBox).Checked := Value;
 
 
 

CheckBox的全选与全不选

帖子On2008 » 星期一, 2005年5月16日 15:17


不错...学到一招...[:D]
 
 
 

CheckBox的全选与全不选

帖子janeyre-na » 星期六, 2005年5月28日 18:14


xianguo朋友第一次的答案好像是不行的,但更正好是非常合理的。
且比oiwim的更具一般性。
谢谢各位!