当按下回车键时,如何停止触发按钮? (专注)

问题描述:

(我会在这里说你好,但Stackoverflow总是删除它出于某种原因)
我的问题是,在我的Visual Basic窗体上,我用来关闭窗体的按钮可以通过回车键触发。这是一个问题,因为我的表单打开了一个经常使用表单的网页,这意味着表单上的回车键将关闭窗口!

因此,我需要找到一种停止焦点在这个按钮上的方法。这是一个自定义按钮,它是自己的类,但是从普通按钮继承。下面是一些图:

阶段1:用户聚焦之前,对WebKitBrowser

Stage 1: Before the user focuses on the WebKitBrowser

2阶段:将用户集中在WebKitBrowser

Stage 2: After the user focuses on the WebKitBrowser

正如你可以看到后,按钮“聚焦“,带有白色边框,类似于正常的Windows按钮,而边框是蓝色的。如果在这个阶段我要进入,表格将会关闭。

最后,或TL; DR,我该如何阻止我的关闭按钮被关注?当按下回车键时,如何停止触发按钮? (专注)

+0

尝试增加'接受tab = FALSE'你当关闭按钮的形式负载。我认为焦点是包含在按钮顺序中的按钮的结果? –

默认情况下,您的按钮包含在导致焦点效果的选项卡顺序中。

尝试从Tab键顺序中删除按钮。当您的表单加载时,您可以将按钮的TabStop设置为False。我尝试了下面的例子,它为我工作。

以前

代码:

Public Class Form1 

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click 
     Me.Close() 
    End Sub 

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load 
    End Sub 
End Class 

enter image description here

代码:

Public Class Form1 
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click 
    Me.Close() 
End Sub 

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load 
    Button1.TabStop = False 
End Sub 

末级

enter image description here