导航:
论坛 -> DELPHI技术
斑竹:liumazi,sephil
作者:
2018/8/12 17:31:34
标题:
如何在GroupBox1遍历checkbox的选中项问题
浏览:859
加入我的收藏
楼主:
s := datamodule2.ClientDataSet3.FieldByName('楼栋权限').AsString; for i := 0 to Length(s)-1 do begin if GroupBox1.Controls[i] is TCheckBox then begin m := copy(s, i, 1); if m = '1' then begin TCheckBox(GroupBox1.Controls[i]).isChecked := True; end; if m='0' then begin TCheckBox(GroupBox1.Controls[i]).isChecked := false; end; end; end; 为什么读取的数据会不一样 如:数据库中为1001001000,第一次读取为什么是1、2、5、9项被选中,不退出程序第二次读取就正常,每次退出程序都是第一次不正常。请高手指点谢谢
----------------------------------------------
-
作者:
2018/8/12 19:45:22
1楼:
m := copy(s, i+1, 1);
----------------------------------------------
还可以更好
作者:
2018/8/13 10:01:53
2楼:
m := copy(s, i+1, 1); 改成这样,每次都是第一次正常,之后都不正常。 如:数据库中为1001001000,第二次或以后每次就成了3、8项
----------------------------------------------
-
作者:
2018/8/13 10:15:17
3楼:
你的数据是唯一的吗,把s值showmessage出来看看就知道了
----------------------------------------------
还可以更好
作者:
wntee (wntee)
▲▲▲▲△
-
普通会员
2018/8/13 11:09:54
4楼:
TcxCheckGroup
----------------------------------------------
当前后左右都没有路时,命运一定是鼓励你向上飞了...
作者:
2018/8/13 12:37:52
5楼:
1
此帖子包含附件: 大小: 283.1K
----------------------------------------------
还可以更好
作者:
2018/8/14 14:10:23
6楼:
换成 s := edit1.text去测试
----------------------------------------------
-
作者:
2018/8/16 10:08:42
7楼:
gruopbox里面checkbox的位置放的不对,重新排列一下。
----------------------------------------------
-