好的我在這裏有一個奇怪的問題。我有一個類似於貨幣轉換器的程序(它執行一個數學函數來產生一個值到另一個文本框中)。我希望它能夠做的是識別您編輯的最後一個文本框(有4個),然後根據您輸入的內容更新其餘文本框,然後用戶必須能夠更改不同的文本框來更改所有文本框。如何用VB.NET創建類似谷歌風格貨幣轉換器的東西
如果有人能讓我開始如何做,甚至一些示例代碼,將不勝感激,謝謝!
對不起,如果我沒有意義,只要看看谷歌貨幣轉換器,並認爲與兩個更多的可編輯框。
好的我在這裏有一個奇怪的問題。我有一個類似於貨幣轉換器的程序(它執行一個數學函數來產生一個值到另一個文本框中)。我希望它能夠做的是識別您編輯的最後一個文本框(有4個),然後根據您輸入的內容更新其餘文本框,然後用戶必須能夠更改不同的文本框來更改所有文本框。如何用VB.NET創建類似谷歌風格貨幣轉換器的東西
如果有人能讓我開始如何做,甚至一些示例代碼,將不勝感激,謝謝!
對不起,如果我沒有意義,只要看看谷歌貨幣轉換器,並認爲與兩個更多的可編輯框。
如果我正確地理解了你,這可能是你想要的。
在表單類中,您有一個名爲lastTextBoxChangedName
的變量,它跟蹤哪個文本框是最後編輯的。
接下來有一個事件處理程序,當四個文本框中的任何一個被改變時它將會觸發。這僅更新lastTextBoxChangedName
。
當您編輯了一個文本框並選擇了下一個,或者點擊導致TextBox失去輸入焦點的東西時,下一個事件處理程序就會執行。這看起來lastTextBoxChangedName
看看哪個是最後編輯的文本框,你可以插入你的更新代碼來替換Select Case
塊中的註釋。
Public Class Form1
Dim lastTextBoxChangedName As String
Private Sub TextBox_TextChanged(sender As Object, e As EventArgs) Handles TextBox1.TextChanged, TextBox2.TextChanged, TextBox3.TextChanged, TextBox4.TextChanged
lastTextBoxChangedName = sender.name
End Sub
Private Sub TextBox1_LostFocus(sender As Object, e As EventArgs) Handles TextBox1.LostFocus, TextBox2.LostFocus, TextBox3.LostFocus, TextBox4.LostFocus
updateTextBoxes()
End Sub
Private Sub updateTextBoxes()
Select Case lastTextBoxChangedName
Case "TextBox1"
'do updates appropriate to textbox1 changed
Case "TextBox2"
'do updates appropriate to textbox2 changed
Case "TextBox3"
'do updates appropriate to textbox3 changed
Case "TextBox4"
'do updates appropriate to textbox4 changed
End Select
End Sub
End Class
但是,如果你已經有單獨的事件處理程序爲每個文本框,不要添加第一個事件處理程序TextBox_TextChanged
,只需添加一行..
lastTextBoxChangedName = sender.name
到每個處理器。
謝謝,我會試試看,看看hpow它,看起來不錯! –
只是看看[問]和[旅遊]如何在這裏發佈問題.... – Plutonix