-1

我的表单上有各种输入文本框。并根据每个输入文本框中的条目,我更新显示文本框。但是,使用文本框的 AppendText 消息。我将输入文本框设置为仅接受数值。因此,对于正确输入的每个字符,我都会更新显示文本框。我遇到的问题是当用户选择 Key.Back 或 Key.Delete 时,我想做的是删除显示文本框中的最后一个字符,但我还没有做到这一点。如何使用 AppendText() 或该控件中可用的任何实用程序函数删除 TextBox 中包含的字符串中的最后一个字符?

If (e.KeyChar = ChrW(Keys.Back)) Then
                txtDisplay.Text -= 1
                txtDisplay.Update()
                ElseIf (Not (Char.IsDigit(e.KeyChar) Or Char.IsControl(e.KeyChar) Or (e.KeyChar = "."))) Then
                    e.Handled = True
                Else
                    txtDisplay.AppendText(e.KeyChar)
                End If
4

1 回答 1

0

KeypPress事件处理程序中使用它txtDisplay

    If e.KeyChar = ChrW(Keys.Back) Then
        If txtDisplay.Text.Length > 0 Then 
            txtDisplay.Text = txtDisplay.Text.Substring(0, txtDisplay.TextLength - 1)
            txtDisplay.SelectionStart = txtDisplay.Text.Length
        End If
    ElseIf (Not (Char.IsDigit(e.KeyChar) Or Char.IsControl(e.KeyChar) Or (e.KeyChar = "."))) Then
        e.Handled = True
    End If
于 2012-05-19T07:46:40.413 回答