2012-03-22 40 views
0

我正在嘗試調試用VB6編寫的窗體窗口。它是輸入客戶數據,以便您可以在地址欄中輸入地址。您也可以輸入90210 Main Street之類的東西,然後輸入它將自動解析文本並在下面的郵政編碼字段中輸入90210,並讓Main Street位於地址欄中。然而,它偶爾會解析錯誤,這正是我想要解決的問題。即使輸入了某些東西,TextBox.text的值也是空的

問題是我無法弄清楚它是如何設置的。如果我在TextBox地址字段中鍵入內容並執行

?ADDRESS.text 

在即時窗口中,它返回一個空字符串。當我在窗體下的下拉列表中查看時,也只有一個函數定義。但是當我在它上面設置一個斷點並單擊文本框時,它不會中斷。它是GotFocus()事件:

Private Sub ADDRESS_GotFocus() 
    Call GCui.BM(ADDRESS) 
End Sub 

這與POSTALCODE文本框相同。它定義了DblClick,GotFocus和LostFocus事件函數。但是在其中任何一個設置一箇中斷點都沒有效果。

是否有任何方法找出表單中存儲Main Street或90210的值的位置?它們在ADDRESS文本框和POSTALCODE文本框中清晰可見,但立即窗口在詢問其值時返回空行。

更新1:

似乎有人已經決定完全重建與新的控制形式。它可能發生在form.load中。但我仍然想知道是否有辦法通過變量值搜索字符串「Main Street」或「90210」。

更新2:

事實證明,有在彼此的頂部的兩個幀。頂部框架在啓動時隱藏,底部(帶有相同標籤和控件的幾乎相同的框架)被顯示。

回答

2

您可以使用「Watch」功能。這將允許您檢查表單中的所有屬性和表單中的所有控件及其值(查看控件節點)。

您還可以通過循環遍歷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 
+1

爲了擴大這一點,他可以在ADDRESS.Text(或實際控件的名稱)發生更改時添加一個手錶並使其中斷。 – 2012-03-22 20:11:29

相關問題