如何设置退出按键时触发的不同事件 [英] How Do I Set Different Events Triggered When Escape Key Press

查看:201
本文介绍了如何设置退出按键时触发的不同事件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

当我第一次按下退出键时按下一个事件应该在下次退出时触发按下下一个事件应该在vb.net中触发

任何想法请

解决方案

简单..试试这个

从Property Window将此Form Property设置为True。

KeyPreview = True

 公开  Form1 
Dim EscPressed As 整数 = 0

私有 Sub Form1_KeyDown( ByVal 发​​件人作为系统。对象 ByVal e As System.Windows.Forms.KeyEventArgs)句柄 MyBase .KeyDown
如果 e .KeyCode = Keys.Escape 然后
EscPressed + = 1
如果 EscPressed = 1 那么
' 你的第一个事件
MessageBox.Show( 首先
ElseIf EscPressed = 2 然后
' 你的第二个事件
MessageBox.Show( Second
ElseIf EscPressed = 3 然后
' 你的第三个事件
MessageBox.Show( 第三个
结束 如果
结束 如果
结束 Sub
结束 Class


不讨厌你的创造力Basmeh ...... :-)!更复杂的方式...



 公共  Form1 
Dim EscPressed As 整数 = 0
私有 Sub Form1_KeyDown( ByVal sender As System 。对象 ByVal e As
System.Windows.Forms.KeyEventArgs)句柄 MyBase .KeyDown

如果 e.KeyCode = Keys.Escape 那么
选择 案例 EscPressed
案例 1 :Event1()
案例 2 :Event2()
案例 3 :Event3()
结束 选择
结束 如果
结束 Sub

私有 Sub Event1()
MessageBox.Show( 事件1触发
EscPressed + = 1
结束 Sub

私有 Sub Event2()
MessageBox.Show( 事件2被解雇
EscPressed + = 1
结束 Sub

私有 Sub Event3()
MessageBox.Show( 事件3被解雇
EscPressed = 0 结束 Sub
结束 Sub
结束


When i first time press escape key press one event should trigger when next time escape key press next event should trigger in vb.net
any ideas please

解决方案

its simple.. try this
set this Form Property to True from Property Window.
"KeyPreview = True"

Public Class Form1
  Dim EscPressed As Integer = 0

         Private Sub Form1_KeyDown(ByVal sender As System.Object, ByVal e As                 System.Windows.Forms.KeyEventArgs) Handles MyBase.KeyDown
        If e.KeyCode = Keys.Escape Then
            EscPressed += 1
            If EscPressed = 1 Then
                'Your First Event Here
                MessageBox.Show("First")
            ElseIf EscPressed = 2 Then
                'Your Second Event Here
                MessageBox.Show("Second")
            ElseIf EscPressed = 3 Then
                'Your Third Event Here
                MessageBox.Show("Third")
            End If
        End If
       End Sub
End Class


Not hating on your creativity Basmeh...:-)! A little more complexed way of doing it...

Public Class Form1 
      Dim EscPressed As Integer = 0 
      Private Sub Form1_KeyDown(ByVal sender As System.Object, ByVal e As
                               System.Windows.Forms.KeyEventArgs) Handles MyBase.KeyDown 

              If e.KeyCode = Keys.Escape Then 
                   Select Case EscPressed 
                        Case 1 : Event1() 
                        Case 2 : Event2() 
                        Case 3 : Event3() 
                   End Select  
              End If 
      End Sub

      Private Sub Event1()
              MessageBox.Show("Event 1 fired") 
              EscPressed += 1 
      End Sub 

      Private Sub Event2()
              MessageBox.Show("Event 2 fired")
              EscPressed += 1 
      End Sub 
     
      Private Sub Event3()
              MessageBox.Show("Event 3 fired")
              EscPressed = 0 End Sub
      End Sub
End Class 


这篇关于如何设置退出按键时触发的不同事件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆