Visual Basic 如何使用 3 NumericUpDown 组件(或其他方法)递增和递减变量?
Visual Basic How would I Increment and Decrement a variable with 3 NumericUpDown component (Or Another Method)?
所以这是我目前在表格上的内容:
用户输入示例:
(例如 NumericUpDown1
= 3,NumericUpDown2
= 1,NumericUpDown3
= 3)
计算机输出示例:
(剩下的分数 = 2,推理:9- (3+1+3) = 2)
我想对这些组件做的是每次在 NumericUpDown
上按下 "up" 我希望 points 变量减少 1(按下时 Vise-Versa)。我面临的主要问题是我不知道如何检查 NumericUpDown
是否被向上或向下按下。
如果你们知道一种不同的更好的方法来解决这个问题,请 100% 尝试一下,因为这种方法看起来很糟糕。
这应该会为您提供所需的一切信息,让您了解如何按照您的要求进行操作:
Private Sub NumericUpDowns_ValueChanged(sender As Object, e As EventArgs) Handles NumericUpDown1.ValueChanged, NumericUpDown2.ValueChanged, NumericUpDown3.ValueChanged
Me.Label1.Text = (3 * NumericUpDown1.Value + 2 * 3 * NumericUpDown2.Value + 2 * 3 * NumericUpDown3.Value).ToString()
End Sub
与其他控件一样,NumericUpDown 具有可以包含您的代码的事件。只要用户使用上下箭头,ValueChanged 事件就应该起作用,因为当用户按下这些箭头时会触发该事件。但是,用户可以输入一个金额,并且在用户单击表单上的其他地方之前事件不会触发。因此,您可能希望将代码移动到按钮 "Update Points" 而不是 ValueChanged 事件。
Private Sub NumericUpDowns_ValueChanged(sender As Object, e As EventArgs) Handles NumericUpDown1.ValueChanged, NumericUpDown2.ValueChanged, NumericUpDown3.ValueChanged
Dim pointsAvailable = CInt(lblPoints.Text)
Dim pointsUsed = NumericUpDown1.Value + NumericUpDown2.Value + NumericUpDown3.Value
lblPoints.Text = (pointsAvailable - pointsUsed).ToString
End Sub
所以这是我目前在表格上的内容:
用户输入示例:
(例如 NumericUpDown1
= 3,NumericUpDown2
= 1,NumericUpDown3
= 3)
计算机输出示例: (剩下的分数 = 2,推理:9- (3+1+3) = 2)
我想对这些组件做的是每次在 NumericUpDown
上按下 "up" 我希望 points 变量减少 1(按下时 Vise-Versa)。我面临的主要问题是我不知道如何检查 NumericUpDown
是否被向上或向下按下。
如果你们知道一种不同的更好的方法来解决这个问题,请 100% 尝试一下,因为这种方法看起来很糟糕。
这应该会为您提供所需的一切信息,让您了解如何按照您的要求进行操作:
Private Sub NumericUpDowns_ValueChanged(sender As Object, e As EventArgs) Handles NumericUpDown1.ValueChanged, NumericUpDown2.ValueChanged, NumericUpDown3.ValueChanged
Me.Label1.Text = (3 * NumericUpDown1.Value + 2 * 3 * NumericUpDown2.Value + 2 * 3 * NumericUpDown3.Value).ToString()
End Sub
与其他控件一样,NumericUpDown 具有可以包含您的代码的事件。只要用户使用上下箭头,ValueChanged 事件就应该起作用,因为当用户按下这些箭头时会触发该事件。但是,用户可以输入一个金额,并且在用户单击表单上的其他地方之前事件不会触发。因此,您可能希望将代码移动到按钮 "Update Points" 而不是 ValueChanged 事件。
Private Sub NumericUpDowns_ValueChanged(sender As Object, e As EventArgs) Handles NumericUpDown1.ValueChanged, NumericUpDown2.ValueChanged, NumericUpDown3.ValueChanged
Dim pointsAvailable = CInt(lblPoints.Text)
Dim pointsUsed = NumericUpDown1.Value + NumericUpDown2.Value + NumericUpDown3.Value
lblPoints.Text = (pointsAvailable - pointsUsed).ToString
End Sub