如何搜索控件(100分)

  • 主题发起人 主题发起人 newyu_1127
  • 开始时间 开始时间
N

newyu_1127

Unregistered / Unconfirmed
GUEST, unregistred user!
各位师兄:
大家好,初到宝地请赐教 问题如下(N详细版):
新建一窗体Form1后,在窗体中放置N个EDIT控件,现要将窗体内所有EDIT的Enabled设为FALSE。
方法:
with form1 do
begin
for i:=0 to controlcount-1 do
begin
if controls is Tedit then
Tedit(controls).enabled:=false;
end;
end;
即可完成。
可是如果我在窗体里放置了一个QuickRep时,在其中放置了N个TQRLabel控件,也想将所有的TQRLabel的Enabled设为FALSE时:
with QuickRep1 do
begin
for i:=0 to controlcount-1 do
begin
if controls is TQRLabel then
TQRLabel(controls).enabled:=false;
end;
end;
却不行了!!!应该如何解决??还有就是Twincontrol是属于什么类,是否为可视化的控件都可以使用,如果我要搜索非可视化的控件(TQuery)应该定义什么类呢?
如蒙赐教不胜铭感!
[?]
 
我试了一下是可以的,不知你的是怎么回事。
TWinControl是所有可视化类的祖先类,要定义非可视化类的控件可以TComponent,但TQuery
可以直接用TDbDataset,这一方面你可以在Query控件上点一下F1键,在弹出的帮助窗口里
点Hierarchy即可看到相关的继承关系。
 
接受答案了.
 
先感谢师兄, 可能我表达错了意思,其实具体情况是这样的:如果我在窗体里放置了
4个TQuery控件,然后希望搜索窗体来将每个搜索到的TQuery的NAME依次附给已经定义
好的一个TEM:array[1..4] of Tquery; 请问如何做到?回答可否也写成详细版,谢谢。
 
后退
顶部