"Main_Form 中所调用的POP_FORM 不在Main_Form 所在的PROJECT 中"?难!
解决方案 »
- 一个时间是2008-12-15 06:20,另一个时间是2008-12-14 23:50,2个时间怎么相减,得到6小时30分这样的结果?
- 抓取网页数据必需掌握哪些知识?
- 这个文件如何读?
- 毕业散分
- 高分请教:请问用什么办法可以判断EnumPrinters获取的系统中安装的打印机是否真的已连接并可用?
- 发个大伙感兴趣的问题,老板键是怎么实现的啊?
- ???我想实现一个类似资源管理器的功能???
- ftp 问题
- 软件本地化是什么意思?
- 如何取得用RecordSet.AddNew方法新增的数据里面自增字段的值?
- 一个关于时间方面很菜的问题,请您帮我解决。我会加分的。
- 先谢过诸位,有誰能告书我哪个学院有韩文专业?要山东的,急用!30奉上
如果Main_Form与POP_FORM在同一个PROJECT 中,请问上述问题如何解决。
main_form中buttons are Useful!
else
button can't be used
end if
生成一公用函数,用来设置MainForm的按钮状态在每个POP FORM的的Unload事件中,将计数器减一,再判断计数器,若计数器为0,则全部POP FORM都关闭,则可调用公用函数恢复Main Form的按钮状态
Command1(1).Enabled = False
在POP_FORM的FORM_LOAD中加入打开BUTTON的命令 Command1(1).Enabled = true
Public Event OnClose(arg As Long)
然后,当关闭窗体时,书写
Unload Me
RaiseEvent OnClose(i) 'i是自定义参数然后,主窗体中写
Public WithEvent frmPopForm As PopForm在需要显示的地方
Set frmPopForm = New PopForm
frmPopForm.Show()
... '使你的按钮失效最后,响应事件
Private frmPopForm_OnClose(arg As Long)
...'使你的按钮有效
End Sub
你的问题比这个例子稍微复杂,但仍然可以这样解决
让你的MainForm继承这个类并让PopForm调用这个类即能实现了通信!
比如在类ClsTest中定义一个虚函数Change(),即不需要一行代码的函数
然后
窗体中加上
Implements ClsTest
(这样即可看到窗体中有了ClsTest_Change())
再有下列代码:
Dim CTest as New ClsTest
Dim Form as form1
Set Form = New form1
Set CTest = Form
这样即让窗体直正继承了类ClsTest
在DLL中只要调用ClsTest这个类中的Change()
而体中ClsTest_Change()的代码即会执行!