首页 > 解决方案 > 您好如何使用从文本框中获得的值更新标签的值?

问题描述

我使用的代码如下:

' (is on top of the listing directly after Public class form1)
Dim Score as Integer 
...
Score=Val(Txtbox5.text) "Txtbox5 is control where I put in the value."
Lbl2.text=score  "Lbl2 is the label where the score must display."
Txtbox5.text=""  "Makes the Textbox empty."

然后问题出现了:当我在 Txtbox5.text 中输入一个新值时,我希望这个值用分数标签中已经存在的值更新标签中的值。我为此使用的代码是 Lbl2.text=score +score 但发生了什么是标签中的分数是双倍的???所以我想要的是:当我在标签中有一个值说 2 并且我在文本框中插入一个新值说 3 然后我想在标签中看到一个值 5。但是我已经尝试了所有方法但没有任何效果谁能帮我解决这个问题??

标签: vb.net

解决方案


如果我理解正确,您想将 TextBox5 的当前值与 Score 变量相加,然后更新标签

这可以简单地解决而无需任何思考

Score += Val(Textbox5.Text)
Lbl2.text=Score  
Txtbox5.Text=""

但是您可能会遇到一些问题,因为在您的文本框中,用户可以输入任何内容,而不仅仅是数字。在这种情况下,Microsoft.VisualBasic 兼容性程序集中的 Val 函数不会告诉您任何信息,只是将非数字字符串转换为零。根据您的要求,这可以接受或不接受。如果您想在输入不好时为您的用户发送消息,您可以编写

Dim currentInput as Integer
if Not Int32.TryParse(Txtbox5.Text, currentInput) Then
    MessageBox.Show("You should input a numeric value!")
Else
    Score = Score + currentInput
    Lbl2.text=Score  
    Txtbox5.Text=""
End If
    

推荐阅读