如何禁用Ctrl + F4?

时间:2011-12-04 10:28:54

标签: vb.net keyboard-shortcuts

我正在与MDI合作,我有一个MDI父母和孩子。但是当我按 Ctrl + F4 时,它会关闭MDI孩子。

我目前正在使用KeyEvents来禁用 Ctrl + F4

Protected Overrides Function ProcessDialogKey(ByVal keyData As System.Windows.Forms.Keys) As Boolean
    Select Case (keyData)
        Case Keys.Control Or Keys.F4
            Return True
        Case Keys.Control
            Return True
    End Select
    Return MyBase.ProcessDialogKey(keyData)
End Function

我不能让这个为我工作......我该如何解决它?。

1 个答案:

答案 0 :(得分:3)

错误的方法,它不是对话框。并确保你把它放在MDI父表格中,而不是孩子。这有效:

Protected Overrides Function ProcessCmdKey(ByRef msg As Message, ByVal keyData As Keys) As Boolean
    If keyData = (Keys.Control Or Keys.F4) Then Return True
    Return MyBase.ProcessCmdKey(msg, keyData)
End Function