紧急求救,在自定义ActiveX控件中加入的窗体,无法访问UserControl对像的成员,详细解释见内.有帮助意见者皆有分,解决问题的另加100!

chengyumao 2004-08-14 03:58:41
情况是这样的.我创建了一个ActiveX控件工程,并在控件上放了MSHFGird,然后在工程中分别加入一个标准模块和一个Form,但发现Form中无论如何都不能访问UserControl对像了,全局只能访问到那个Form对像和标准模块中定义的函数,但我想在Form中调整UserControl对像上的MSHFGird的属性,恳请各位指教.........!
...全文
150 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
chengyumao 2004-08-14
  • 打赏
  • 举报
回复
UP 一下.......
chengyumao 2004-08-14
  • 打赏
  • 举报
回复
......看明白了,用全局变量是可以调整MSHFGird,但是需要UserControl主动去刷新,这样很浪费资源吧,特别是表格比较大的时候.我的意思是在Form1中能不能直接调用UserControl对像的属性.就像在Form1里调用Form2的属性一样.
特别是为什么对于UserControl对像在工程内的其他对像无法访问???
chengyumao 2004-08-14
  • 打赏
  • 举报
回复
??哦....这个.......问一下,哪里定义算是全局变量??在Option Explicit这后紧跟着定义的就是了吗??我在 UserControl域里的Option Explicit下定义的变量,Form1里不认啊.......难道要在标准模块里...............
rainstormmaster 2004-08-14
  • 打赏
  • 举报
回复
用全局变量传递数据试试
chengyumao 2004-08-14
  • 打赏
  • 举报
回复
我想在我的控件在最终用户运行时,双击后弹出一个设置窗体,调整MSHFGird的大小等(我的控件主要也就是这个MSHFGird,只是增强了一点功能)

代码的话,在控件中如下调用,应该没有什么问题.
Private Sub UserControl_Resize()
MSHFGid1.Height = UserControl.Height
MSHFGid1.Width = UserControl.Width
但就是在Form1中怎样也不行,比如这样
Private Sub Form_Load()
UserControl.Height=1500 '或是
Msh.Mshfg.Height=1500 'Msh 是控件工程名,Mshfg 是控件的Name属性.在打完Msh.弹出的提示表中只有Form1对像和几个标准模块里的函数.
rainstormmaster 2004-08-14
  • 打赏
  • 举报
回复
看看你的代码,还有,说说你想实现什么?

1,451

社区成员

发帖
与我相关
我的任务
社区描述
VB 控件
社区管理员
  • 控件
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧