Debugging 即使输入了某些内容,TextBox.text值也为空
我正在尝试调试用VB6编写的窗体窗口。它用于输入客户数据,以便您可以在地址字段中键入地址。你也可以输入类似于90210 Main Street的内容,输入时它会自动解析文本,并在下面的邮政编码字段中写入90210,让Main Street出现在地址字段中。然而,它偶尔会解析错误,这正是我试图解决的问题 问题是我不知道它是如何设置的。如果我在文本框地址字段中键入内容并执行Debugging 即使输入了某些内容,TextBox.text值也为空,debugging,vb6,Debugging,Vb6,我正在尝试调试用VB6编写的窗体窗口。它用于输入客户数据,以便您可以在地址字段中键入地址。你也可以输入类似于90210 Main Street的内容,输入时它会自动解析文本,并在下面的邮政编码字段中写入90210,让Main Street出现在地址字段中。然而,它偶尔会解析错误,这正是我试图解决的问题 问题是我不知道它是如何设置的。如果我在文本框地址字段中键入内容并执行 ?ADDRESS.text 在即时窗口中,它返回一个空字符串。当我查看表单下的下拉列表时,也只定义了一个函数。但是,当我在它
?ADDRESS.text
在即时窗口中,它返回一个空字符串。当我查看表单下的下拉列表时,也只定义了一个函数。但是,当我在它处设置断点并单击文本框时,它不会中断。这是GotFocus()事件:
POSTALCODE文本框也是如此。它定义了DblClick、GotFocus和LostFocus事件函数。但在其中任何一个设置断点都没有效果
有没有办法找出value Main Street或90210在表单中的存储位置?它们在地址文本框和POSTALCODE文本框中清晰可见,但当询问它们的值时,立即窗口返回空行
更新1:
似乎有人决定用新控件完全重建表单。它可能发生在form.load中。但我仍然想知道是否有一种方法可以搜索变量值来查找字符串“Main Street”或“90210”
更新2:
事实证明,有两个框架相互重叠。顶部框架在启动时隐藏,底部(标签和控件几乎相同的框架)显示。您可以使用“监视”功能。这将允许您检查表单的所有属性以及表单中的所有控件及其值(查看“控件”节点)
您也可以通过在form.controls集合上循环的代码来实现这一点
Dim o As Object
For Each o In Me.Controls
If TypeOf o Is TextBox Then
Debug.Print o.Text
End If
Next
为了进一步扩展,他可以添加一块手表,当ADDRESS.Text(或实际控件的名称)发生变化时,手表就会断开。
Dim o As Object
For Each o In Me.Controls
If TypeOf o Is TextBox Then
Debug.Print o.Text
End If
Next