当用户点击进入visual basic 2010时的msgbox

时间:2009-12-06 12:04:06

标签: vb.net winforms

我只想在用户点击“输入”键时发出警告。

我在keyup事件中尝试了这个,

If e.KeyCode = Keys.Enter Then
    MsgBox("msg")
End If

它没有用,是不是错了?

5 个答案:

答案 0 :(得分:3)

Enter键在UI设计中严格定义使用,它执行对话框的“接受”操作。在设计器中,选择表单并将AcceptButton设置为您的按钮。无需代码。

请注意,CancelButton具有类似的用法,它与Escape键硬连接。

答案 1 :(得分:1)

不是一个完整的答案,但它可能有所帮助。如果另一个textBox处于活动状态,您可以通过退出sub来阻止提交主表单:

Private Sub btnSubmit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSubmit.Click

        ' do not submit anything in case that something else is active
        If txtItemPrompt.Focused() Then
            Exit Sub
        End If

        ' rest of the code
End Sub

答案 2 :(得分:0)

这实际上取决于您申请的背景。 KeyUp事件仅触发特定控件,并冒泡到它的父控件。但是,如果未在控件上设置焦点,则表示事件将不会触发。

答案 3 :(得分:0)

只需要确保将代码放在Handles Me.KeyDown

的子代码中
Private Sub Form1_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles Me.KeyDown
        If e.KeyCode = Keys.Enter Then
            MsgBox("Enter Pressed")
        End If
    End Sub

答案 4 :(得分:0)

如果要在表单级别查看回车键,则需要将表单的keypreview属性设置为true。否则它被任何具有焦点的控件所消耗。