在ActiveForm里定义的接口方法里如何才能识别ActiveForm本身呢?急!!(100分)

  • 主题发起人 星星鱼
  • 开始时间

星星鱼

Unregistered / Unconfirmed
GUEST, unregistred user!
这个问题有关CBuilder的但是我想各位Delphi高手应该不成问题的,我用的工具是CBuilder,开发
的ActiveForm名字为 TestX,我现在想为它定义个接口方法,在TypeLibrary里ITestX里定义,定义
后生成的方法是在TestXImpl单元里,即TTestXImpl::方法名,
现在我在定义的方法里想控制ActiveForm里控件的属性时,可以用m_VclCtl->控件名,在Delphi里
好像直接可以用控件名,然而我在方法里无法调用这个ActiveForm本身,编译的时候根本不
认识TestX是什么?怎么回事呀?困扰我好久了,有谁能帮帮我,多谢了!
 
所谓不能识别ActiveForm本身,就是在定义方法的执行单元("ActiveForm名"+"Impl".cpp)里
使用到窗体本身时编译出错,无法通过;请高手帮忙,能解决的我把所有分都送给你们,谢谢!
 
你的ActiveForm里TestX不是一个实例,虽然cbuild里面编辑的时候感觉是一个窗体。
可是它并不是啊,这个好像没有办法的。以前我找了很久 最后放弃了
 
可以绕过这个问题:
新建一个Form,假设它是你的应用的主窗口,如后在ActiveForm,即你的TestX中
Create主窗口,并将它的Alight设为alClient,这样你在接口方法调用主Form当
然应该是可以了吧。
 
转换一个this指针类型.
(TTestX)this->
 
接受答案了.
 
顶部