这个搜索 花的时间 最长 整个CSDN就这两篇 记住了哦
http://topic.csdn.net/u/20080506/10/DC9F7C54-E2FC-40EC-B5AD-8E6B95445FE5.html
http://topic.csdn.net/u/20081204/11/B418BC54-B589-4052-8D0C-603DDE088161.html
var tmpchk : TCheckBox;
for i := 0 to pPan.ControlCount-1 do //pPan 是一个groupbox控件
begin
s := pPan.Controls[i].ClassName;
if SameText(s, 'TCheckBox') then
begin
tmpchk := TCheckBox(pPan.Controls[i]);
if tmpchk.checked then icnt := icnt+1;
你自己的处理代码
end;
end;
with GroupBox1 do
begin
for i:=0 to ControlCount-1 do
if Controls[i] is Tcheckbox then//注意这里Controls
begin
if Tcheckbox(Controls[i]).checked then
z :=Tcheckbox(Controls[i]).caption;
Dialogs.ShowMessage(z); //同等于showmessage(z);
end;
end;
这里是我写的代码
我在容器上遍历的而不是窗体上.
我自己的写的用到的例子:

点保存设置的事件代码:
procedure TfrmSystemSetup.download_save_btnClick(Sender: TObject);
var
I: Integer;
begin
for I := 0 to receiver_state_grp.ControlCount-1 do
begin
if Tcheckbox(receiver_state_grp.Controls[I]).checked then
begin
showmessage(Tcheckbox(receiver_state_grp.Controls[I]).caption);
end;
end;
end;
本文来自博客园,作者:del88,转载请注明原文链接:https://www.cnblogs.com/del88/archive/2011/12/07/2279751.html
浙公网安备 33010602011771号