Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Vb.net 禁用Alt+;键关闭事件中的F4功能_Vb.net - Fatal编程技术网

Vb.net 禁用Alt+;键关闭事件中的F4功能

Vb.net 禁用Alt+;键关闭事件中的F4功能,vb.net,Vb.net,如何防止窗体在keydown事件中被alt+f4键关闭?我面临的问题是按住ALT键,按F4键关闭窗体,但我想阻止窗体关闭。下面是我的代码 Private Sub frminstituteselect_KeyDown(sender As Object, e As KeyEventArgs) Handles Me.KeyDown If e.Alt = True And e.KeyCode = Keys.F4 Then e.Handled = True End If E

如何防止窗体在keydown事件中被alt+f4键关闭?我面临的问题是按住ALT键,按F4键关闭窗体,但我想阻止窗体关闭。下面是我的代码

Private Sub frminstituteselect_KeyDown(sender As Object, e As KeyEventArgs) Handles Me.KeyDown
    If e.Alt = True And e.KeyCode = Keys.F4 Then
        e.Handled = True
    End If
End Sub
像这样试试

Private ALT_F4 As Boolean = False


Private Sub frminstituteselect_FormClosing(sender As Object, e As System.Windows.Forms.FormClosingEventArgs) Handles Form1.FormClosing
    If ALT_F4 Then
        e.Cancel = True
        Return
    End If
End Sub


Private Sub frminstituteselect_KeyDown(sender As Object, e As System.Windows.Forms.KeyEventArgs) Handles Form1.KeyDown
    ALT_F4 = (e.KeyCode.Equals(Keys.F4) AndAlso e.Alt = True)
End Sub
或者干脆

 Private Sub frminstituteselect_FormClosing(sender As Object, e As System.Windows.Forms.FormClosingEventArgs) Handles Form1.FormClosing
            e.Cancel = True
  End Sub

谢谢你的回复。但我不想在表单关闭事件中使用。让我解释一下,我有一个表单和一个按钮在里面,点击按钮表单应该被关闭,但不是在alt+f4上,也不是在表单关闭事件中。还有一件事我想说的是,表单将通过按住ALT键并按F4来关闭,这是我不想要的。如果分别按下ALT键和F4键,您提到的代码将起作用。