VB6用户控件中的引用函数
我在引用VB6项目中创建的用户控件的公共过程时遇到问题 一个简单的示例(exe),我有一个带有按钮和用户控件的表单:VB6用户控件中的引用函数,vb6,user-controls,Vb6,User Controls,我在引用VB6项目中创建的用户控件的公共过程时遇到问题 一个简单的示例(exe),我有一个带有按钮和用户控件的表单: Option Explicit Private Sub Command1_Click() UserControl1.updateMessage ("TIME NOW: " & DateTime.Time) End Sub 用户控制代码如下所示: Option Explicit Public Sub updateMessage(ByVal newMessage
Option Explicit
Private Sub Command1_Click()
UserControl1.updateMessage ("TIME NOW: " & DateTime.Time)
End Sub
用户控制代码如下所示:
Option Explicit
Public Sub updateMessage(ByVal newMessage As String)
Label1.Caption = newMessage
End Sub
此exe编译并工作正常,当我在表单中键入updateMessage时,它会显示在intellisense列表中,并带有相应的要求。我遇到的问题是,当我想“转到updateMessage的定义”时,而不是转到用户控件中相应的代码部分,消息总是返回:
“无法跳转到'updateMessage',因为它位于当前未引用的库'Unknown1'中。”
其中,“Unkown1”的编号后缀会不时更改
似乎如果没有对这个过程的引用,那么它就不会出现在intellisense中,项目也不应该编译。在使用MZTools运行此函数时(尽管无论安装了什么插件,都会出现错误),我可以进入updateMessage过程,并使用它查找调用此函数的所有过程,因此两者之间应该存在链接(尽管我不确定MZTools是否仅使用文本匹配模式查找)
如果有人能对这件事有所了解,我们将不胜感激,并为这个可怜的VB6开发人员省去许多麻烦
我已经安装了VB6的SP6(build 9782),并且正在HP dx2400上运行XP SP3。是的,这非常烦人,我确信这是VB6中的一个错误。我这样说是因为,如果您在对象浏览器中找到
updateMessage
方法并双击它,您将进入定义。因此,编译器确实知道定义在哪里,它只是拒绝使用Shift+F2将您带到那里。是的,这非常烦人,我确信这是VB6中的一个错误。我这样说是因为,如果您在对象浏览器中找到updateMessage
方法并双击它,您将进入定义。因此,编译器确实知道定义在哪里,它只是拒绝使用Shift+F2将您带到那里。Ugh,我希望它只是我的构建/引用或其他东西。这并不是世界末日,但是每次都让我不得不搜索名字的速度变慢了。我还怀疑这与它将UserControls视为已编译控件,并且不尝试访问其源代码这一事实有关。有什么想法吗?我不太了解用户控件的低级机制,我只是知道它们有时很烦人。我发现这个特别的问题非常烦人,以至于我经常发现自己在用一个叫做Project Analyzer的工具浏览代码,它可以简单地点击UC成员定义,带我到UC成员定义。我们在5年或6年前购买了企业版(版本7),我发现它非常有用。从那时起,价格飞涨,但是如果你知道你将在VB6中做很多工作,你可能想看看它。呃,我希望它只是我的构建/引用或其他东西。这并不是世界末日,但是每次都让我不得不搜索名字的速度变慢了。我还怀疑这与它将UserControls视为已编译控件,并且不尝试访问其源代码这一事实有关。有什么想法吗?我不太了解用户控件的低级机制,我只是知道它们有时很烦人。我发现这个特别的问题非常烦人,以至于我经常发现自己在用一个叫做Project Analyzer的工具浏览代码,它可以简单地点击UC成员定义,带我到UC成员定义。我们在5年或6年前购买了企业版(版本7),我发现它非常有用。从那时起,价格飞涨,但是如果你知道你将在VB6中做很多工作,你可能想看看它。