Vb.net 当按下enter键时,如何阻止按钮触发?(重点)
(我想在这里打招呼,但Stackoverflow总是出于某种原因将其删除)Vb.net 当按下enter键时,如何阻止按钮触发?(重点),vb.net,forms,button,focus,Vb.net,Forms,Button,Focus,(我想在这里打招呼,但Stackoverflow总是出于某种原因将其删除) 我的问题是,在我的Visual Basic窗体上,我用来关闭窗体的按钮可以由enter键触发。这是一个问题,因为我的表单打开一个经常使用表单的网页,这意味着表单上的enter键将关闭窗口 因此,我需要找到一种方法来停止这个按钮上的焦点。它是一个自定义ish按钮,是它自己的类,但继承自普通按钮。以下是一些图表: 阶段1:在用户关注WebKit浏览器之前 阶段2:用户关注WebKit浏览器后 如您所见,该按钮是“聚焦”的
我的问题是,在我的Visual Basic窗体上,我用来关闭窗体的按钮可以由enter键触发。这是一个问题,因为我的表单打开一个经常使用表单的网页,这意味着表单上的enter键将关闭窗口
因此,我需要找到一种方法来停止这个按钮上的焦点。它是一个自定义ish按钮,是它自己的类,但继承自普通按钮。以下是一些图表:
阶段1:在用户关注WebKit浏览器之前
阶段2:用户关注WebKit浏览器后
如您所见,该按钮是“聚焦”的,带有白色边框,类似于普通Windows按钮,边框为蓝色。如果在此阶段按enter键,表单将关闭。
总之,或TL;DR,如何停止关闭按钮聚焦?默认情况下,您的按钮包含在选项卡顺序中,从而产生聚焦效果 尝试从选项卡顺序中删除按钮。加载表单时,可以将按钮的
选项卡stop
设置为False
。我尝试了下面的例子,它对我有效
之前
代码:
之后
代码:
末级
加载表单时,尝试将
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
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