我有一个页面上已经有一些checkbox组件了,我现在想实现 在打开页面的时候,自动选中一些我需要的checkbox组件.我的思路是,我先把我需要选中的checkbox组件的名字放在一个数组里面,然后,在打开页面的时候从数组中读出需选中的checkbox组件,使它们的checked 为 TRUE . 请各位高人指教该如何实现.
解决方案 »
- 在一个线程中频繁创建和删除Tstringlist
- 界面贴图的问题
- delphi2007 IDE
- 100分求个QuickReport for Delphi 2006的下载地址或email给我
- 请问一个简单的问题
- 开发一组件,如何得到哪个窗口正在Destroy或者Close?不用OnClose事件及OnDestroy
- web service用isapi如何在广域网上发布
- 关于报表字段问题??
- 我作了一个ICO的图标,作为程序的图标,为什么我用它的时候提示错误。而用别的(系统自带)就没有错误?
- 120急救!!delphi和ms sql sever的连接问题!!
- delphi checkbox 问题求教
- DLL静态调用如何捕获异常?
With TINIFile.Create(ExtractFilePath(application.ExeName)+'\chis.ini') do
begin
if readstring('setting','autoload','')='1' then
checkbox1.Checked:=true else
checkbox1.Checked:=false;
if readstring('setting','update','')='1' then
checkbox2.Checked:=true else
checkbox2.Checked:=false;
if readstring('setting','checktime','')='0' then
begin
checkbox3.Checked:=false;
trackbar1.Position:=0;
end else
begin
checkbox3.Checked:=true;
trackbar1.Position:=strtoint(readstring('setting','checktime',''));
end;
ini文件
[setting]
autoload=1
update=1
checktime=2
datelog=1
不过我希望是 不要用到INI文件,我想通过取出数组中值来选中CHECKBOX,因为我的数组的值是从数据库中取出来的,动态的.
我是不会 做到对应名字的checkbox的被选中
我在数据库相关里面发了个更好说明的,
http://topic.csdn.net/u/20070824/14/79c32228-e11a-424b-9212-a2a4094d671c.html
谢谢
//sql语句
sql:='select rightName from rightList where userID = ''1''';//赋值循环
while not query1.eof do
for i := 0 to query1.RecordCount do
begin
UA[i] := datamodule1.Q1.Fields[0].AsString;//数据库中rightName的值和页面上checkbox的name一致,UA是一个足够大的string数组
TCheckBox(FindComponent('''+UA[i]+''')).Checked:=True;//运行到这里出错
datamodule1.Q1.Next;
end请帮忙
谢谢
//括号里面是checkbox的的名称,你那当然不对啦
原来是我的代码有问题,应该是
//sql语句
sql:= "select rightName from rightList where userID = ''1 '';while not Q1.eof do
for i := 0 to Q1.RecordCount -1 do
begin
UA[i] := Q1.Fields[0].AsString;
TCheckBox(FindComponent(''+UA[i]+'')).Checked:=True;
Q1.Next;
end谢谢各位