一个ocx控件工程,代码很简单
Private m_Parent As FormPrivate Sub UserControl_Click()
Form1.Show vbModeless, m_Parent
End SubPublic Property Get ParentForm() As Object
Set Parent = m_Parent
End PropertyPublic Property Let ParentForm(ByVal vNewValue As Object)
If TypeOf vNewValue Is Form Then Set m_Parent = vNewValue
End Property在一个测试工程中引用这个工程,代码如下:
Private Sub Form_Load()
UserControl11.ParentForm = Me
End Sub点击这个控件就会弹出一个form,这个是没问题的,但是编译这个ocx工程以后,去掉对工程的引用,换成引用生成ocx文件,这时就会出现错误,大意是“不支持设计和编译时的控件交互”,不知道什么原因,请各位高手指教
Private m_Parent As FormPrivate Sub UserControl_Click()
Form1.Show vbModeless, m_Parent
End SubPublic Property Get ParentForm() As Object
Set Parent = m_Parent
End PropertyPublic Property Let ParentForm(ByVal vNewValue As Object)
If TypeOf vNewValue Is Form Then Set m_Parent = vNewValue
End Property在一个测试工程中引用这个工程,代码如下:
Private Sub Form_Load()
UserControl11.ParentForm = Me
End Sub点击这个控件就会弹出一个form,这个是没问题的,但是编译这个ocx工程以后,去掉对工程的引用,换成引用生成ocx文件,这时就会出现错误,大意是“不支持设计和编译时的控件交互”,不知道什么原因,请各位高手指教
将ocx工程的设置为二进制兼容.