首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >当按下enter键时,如何阻止按钮触发?(重点)

当按下enter键时,如何阻止按钮触发?(重点)
EN

Stack Overflow用户
提问于 2015-06-14 16:49:05
回答 1查看 1.4K关注 0票数 2

(我会在这里打个招呼,但Stackoverflow总是出于某种原因删除它)

我的问题是,在Visual窗体上,用于关闭窗体的按钮可以由enter键触发。这是一个问题,因为我的表单打开了一个经常使用表单的网页,这意味着表单上的enter键将关闭窗口!

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

第一阶段:在用户关注WebKitBrowser之前

第二阶段:在用户关注WebKitBrowser之后

如您所见,该按钮是“聚焦”的白色边框,类似于一个正常的Windows按钮,其中的边框是蓝色的。如果我在这个阶段按enter键,表单就会关闭。

总之,TL;DR,我如何阻止我的关闭按钮被聚焦?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-06-14 17:54:43

默认情况下,按钮包括在选项卡顺序中,这会产生焦点效果。

尝试从选项卡顺序中删除按钮。在加载表单时,可以将按钮的TabStop设置为False。我尝试了下面的例子,它对我有效。

先于

代码:

代码语言:javascript
复制
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

代码:

代码语言:javascript
复制
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

端级

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30832003

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档