我想创建一个按钮来撤消VB.NET中的数学过程。
该程序包含一个列表。用户将项目添加到此列表中。这些物品也附有价值(价格)。这些项目由按钮表示。因此,当用户单击按钮时,特定项目及其价格将放置在列表框中。
在列表框下方,有一个Total Due文本框。这包括为了购买列表中的选定项目而需要支付的总金额。
我可以通过选择'清除最后一项'轻松删除列表中的条目。按钮。但总的到期日'不会改变。
到目前为止,我的代码如下:
Private Sub btnClearLast_Click(sender As Object, e As EventArgs) Handles btnClearLast.Click
'clear the last item to appear in the list box
If lstOrder.Items.Count = 0 Then
MessageBox.Show("No Orders to Clear", "Error")
ElseIf lstOrder.Items.Count > 0 Then
lstOrder.Items.RemoveAt(lstOrder.Items.Count - 1)
End If
End Sub
图像是理想的,但没有足够的声誉来为问题添加图像。希望这有助于多一点
答案 0 :(得分:2)
我假设您有一个TextBox(NumberBox)供用户输入一个数字,一个Label(TotalLabel)显示总数,一个Button(AddButton)将Numberbox中的数字添加到总数中和另一个按钮(UndoButton)撤消上一次添加。
Private total, savedTotal As Double, canUndo As Boolean
Sub AddButton_Click(sender As Object, e As EventArgs) Handles AddButton.Click
Dim number As Double
If Not Double.TryParse(NumberBox.Text, number) Then
MessageBox.Show("Please enter a valid number")
Exit Sub
End If
savedTotal = total
canUndo = True
total += number
TotalLabel.Text = total.ToString
End Sub
Sub UndoButton_Click(sender As Object, e As EventArgs) Handles UndoButton.Click
If canUndo Then
total = savedTotal
canUndo = False
TotalLabel.Text = total.ToString
Else
MessageBox.Show("Can't undo")
End If
End Sub
请注意,此代码仅支持单个撤消操作。如果需要多个撤消操作,则需要将所有先前的值存储在集合中,例如Stack。