动态创建出来的checkbox控件,怎么判断他是否被选择呢?

比如varcheckbox:Tcheckbox;-bagincheckbox:=Tcheckbox.Create(form1);checkbox.Parent:=form... 比如 var checkbox:Tcheckbox; -
bagin
checkbox:=Tcheckbox.Create(form1); checkbox.Parent:=form1;;
checkbox.Top:=10;
checkbox.Left:=10;
checkbox.Caption := 'checkbox1'; CheckBox.Name := 'checkbox1';
end; -
动态创建完了,屏幕上看到了这个控件,那我怎么判断它是否被选择了呢?
比如: button1的单击事件中写下;
checkbox1.checked := true; //这样delphi说不知道checkbox1是什么?
-
怎么判断它是否被选择了呢? 谢谢回答!
展开
 我来答
匿名用户
2013-07-30
展开全部
{别用动态创建的控件不能用它的name来设置属性的,因为它是个字符串. 不是有效的对象标识符.可以用下边三种办法访问动态创建的控件,第一种就是直接用你定义控件的变量直接操作控件就行了,第二第三种就是通过控件名访问了,但也不是直接通过控件的name访问,是通过查找控件名(name)找到控件先,再转换类型使用就行了.}begin
SHOWMESSAGE('方法一: 用你定义的控件变量名checkbox直接访问, 别用控件的名称(name), 因为控件名只是个字符串');
checkbox.checked := true;
SHOWMESSAGE('直接用控件变量checkbox: 点击"确定"恢复!');
checkbox.Checked := false;
SHOWMESSAGE('方法二:这个方法可以通过控件名使用控件了, 用父窗口的FindChildControl方法查找, 然后强类型转换, 就能设置属性了');
if FindChildControl('checkbox1')<>nil then
begin
(FindChildControl('checkbox1') as tcheckbox).Checked:=True;
SHOWMESSAGE('Self.FindChildControl: 点击"确定"恢复!');
(FindChildControl('checkbox1') as tcheckbox).Checked:=False;
end; SHOWMESSAGE('方法三: 用Application的FindComponent方法查找');
if Application.FindComponent('checkbox1')<>nil then
begin
tcheckbox(Application.FindComponent('checkbox1')).Checked:=True;
SHOWMESSAGE('Application.FindComponent: 点击"确定"恢复!');
tcheckbox(Application.FindComponent('checkbox1')).Checked:=False;
end;
end;
匿名用户
2013-07-30
展开全部
if(checkbox1.checked = =true)记得把控件的name改成 checkbox1
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式