TComponent和TControl的问题(50分)

  • 主题发起人 主题发起人 delphi999
  • 开始时间 开始时间
D

delphi999

Unregistered / Unconfirmed
GUEST, unregistred user!
大侠:
我写一TComponent,想控制调用他的Form中的控件(TControl).
该如何写.
例如: TSampleComponent = class(TComponent)
TSampleComponent中有一方法 : SetCaption.
调用SetCaption时,调用的Form的Caption := 'DFW'
 
application.Components找出form后
form.Components找出tcontrol
 
列举所有的控件,然后识别他的类,分别进行相应的控制,我就是这样实现的,不难[:)]
 
一般情况下,你的控件的Owner就是Form(除非用编程改变Owner),比如你的Form上有一个
Panel,你的控件放在Panel上,你的控件的Parent是Panel,而Owner是Form
 
各位大哥:
小弟笨。能否给个例子。
在SetCaption中应该如何写?
是否用GetOwner属性
 
Application.mainform.caption!
 
var ComOwner : TComponent;

begin
ComOwner := Self.Owner;
while not (ComOwner is TForm) do
ComOwner := ComOwner.Owner;
(ComOwner as TForm).Caption := 'Component Set';
end;
 
多人接受答案了。
 
后退
顶部