第一种  (全屏不可触发)    

protected override bool ProcessCmdKey(ref System.Windows.Forms.Message msg, System.Windows.Forms.Keys keyData)
{
int WM_KEYDOWN = ;
int WM_SYSKEYDOWN = ;
if (msg.Msg == WM_KEYDOWN | msg.Msg == WM_SYSKEYDOWN)
{
switch (keyData)
{
case Keys.Escape:
DialogResult dr = MessageBox.Show("确定要退出吗?", "退出系统", MessageBoxButtons.OKCancel);
if (dr == DialogResult.OK)//如果点击“确定”按钮
{
FormPassword form = new FormPassword();
form.StartPosition = FormStartPosition.CenterScreen;
form.ShowDialog();
// this.Close();//esc关闭窗体 //System.Environment.Exit(0);
} break;
}
}
return false;
}

//第二种方法   (全屏可触发)

  private void timer2_Tick(object sender, EventArgs e)
{
//因为回车的ASCII码是13 所以我们这里就用把回车的ascii传递过去
//需要监控什么按键就写某个按键的ASCII码
if (GetAsyncKeyState() != )
{
////MessageBox.Show("你按下了ESC");
DialogResult dr = MessageBox.Show("确定要退出吗?", "退出系统", MessageBoxButtons.OKCancel);
//if (dr == DialogResult.OK)//如果点击“确定”按钮
//{
// //Form2 form = new Form2();
// //form.StartPosition = FormStartPosition.CenterScreen;
// //form.ShowDialog();
// // this.Close();//esc关闭窗体 // System.Environment.Exit(0);
//} //this.Close();
}
}
[DllImport("user32")]
public static extern void mouse_event(int dwFlags, int dx, int dy, int dwData, int dwExtraInfo);
private readonly int MOUSEEVENTF_MOVE = 0x0001;//模拟鼠标左键按下
private readonly int MOUSEEVENTF_LEFTUP = 0x0004;//模拟鼠标左键抬起
[DllImport("user32.dll")]
//函数声明
public static extern int GetAsyncKeyState(int vKey);

//第三种方法 视频播放器按键事件 (全屏不可触发)

    private void axWindowsMediaPlayer1_KeyDownEvent_1(object sender, _WMPOCXEvents_KeyDownEvent e)
{
if (e.nKeyCode == (int)Keys.Escape) //
{
//MessageBox.Show("test");
this.Close();
}
}

//第四种方法

HOOK,    只能触发几下 就失效了 不知道为啥 ,........

附:

VK_LBUTTON             鼠标左键                      0x01

VK_RBUTTON             鼠标右键                      0x02

VK_CANCEL              Ctrl + Break                  0x03

VK_MBUTTON             鼠标中键                      0x04

VK_BACK                Backspace 键       0x08

VK_TAB                 Tab 键                        0x09

VK_RETURN              回车键                        0x0D

VK_SHIFT               Shift 键                      0x10

VK_CONTROL             Ctrl 键                       0x11

VK_MENU                Alt 键                 0x12

VK_pause               Pause 键                      0x13

VK_CAPITAL             Caps Lock 键                  0x14

VK_ESCAPE              Esc 键                        0x1B

VK_SPACE               空格键         0x20

VK_PRIOR               Page Up 键                    0x21

VK_NEXT                Page Down 键                  0x22

VK_END                 End 键                        0x23

VK_HOME                Home 键                       0x24

VK_LEFT                左箭头键                      0x25

VK_UP                  上箭头键                      0x26

VK_RIGHT               右箭头键                      0x27

VK_DOWN                下箭头键                      0x28

VK_SNAPSHOT            print screen 键               0x2C

VK_Insert              Insert 键                     0x2D

VK_Delete              Delete 键                     0x2E

'0' – '9'             数字 0 - 9                    0x30 - 0x39

'A' – 'Z'             字母 A - Z                    0x41 - 0x5A

VK_LWIN                左WinKey(104键盘才有)         0x5B

VK_RWIN                右WinKey(104键盘才有)         0x5C

VK_APPS                AppsKey(104键盘才有)          0x5D

VK_NUMPAD0            小键盘 0 键                    0x60

VK_NUMPAD1            小键盘 1 键                    0x61

VK_NUMPAD2            小键盘 2 键                    0x62

VK_NUMPAD3            小键盘 3 键                    0x63

VK_NUMPAD4            小键盘 4 键                    0x64

VK_NUMPAD5            小键盘 5 键                    0x65

VK_NUMPAD6            小键盘 6 键                    0x66

VK_NUMPAD7            小键盘 7 键                    0x67

VK_NUMPAD8            小键盘 8 键                    0x68

VK_NUMPAD9            小键盘 9 键                    0x69

VK_F1 - VK_F24        功能键F1 – F24               0x70 - 0x87

VK_NUMLOCK            Num Lock 键                   0x90

VK_SCROLL             Scroll Lock 键                0x91

C# 后台按键 视频播放器 全屏后无法 触发的更多相关文章

  1. H5视频播放自动全屏,暂停退出全屏等功能

    html5视频播放自动全屏,暂停退出全屏等功能 在参考了html5 video fullScreen全屏实现方式及司徒正美的书<javascript框架设计>287页相关代码后,在Safa ...

  2. Flash设置全屏后,放到网页中显示不正常

    stage.displayState = StageDisplayState.FULL_SCREEN;//全屏,注意当设置全屏后,放到网页中显示不正常

  3. layer弹出层中H5播放器全屏出错解决 & 属性poster底图占满<video>的方法

    1. 在layer弹窗组件中 如果使用了flash播放器,全屏是正常的 但若使用了HTML5的播放器,全屏失效 举个栗子 <!DOCTYPE html> <html> < ...

  4. Android 隐藏虚拟按键,并且全屏

    /** * 隐藏虚拟按键,并且全屏 */protected void hideBottomUIMenu() { //隐藏虚拟按键,并且全屏 if (Build.VERSION.SDK_INT > ...

  5. vmware全屏后去掉上面的横杠

    全屏后选择查看—>独占模式最上面的杠就没了,而且不按退出快捷键,不会在切换到外面的系统中了.

  6. iOS 11 实现App在禁止转屏的状态下网页播放器全屏

    禁止转屏是这个意思,在General中设置Device Orientation只有竖屏. 要点就是重写UIViewController的以下3个属性方法 系统的全屏视频播放器是AVFullScreen ...

  7. iOS - 视频播放处理全屏/横屏时候遇见的坑

    视频播放想要全屏,使用shouldAutorotate方法禁止主界面,tabbar控制器横屏,导致push进入播放页面不能横屏的问题... - (BOOL)shouldAutorotate { ret ...

  8. krpano下全屏后弹窗失效问题解决方法

    原因 krpano 自身的全屏仅全屏自身,以外的html效果将无法显示 解决方法 把全屏按钮换成浏览器自身的全屏效果 解决步骤 vtourskin.xml <layer name="n ...

  9. HTML5--浏览器全屏操作、退出全屏、是否全屏

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

随机推荐

  1. Diagnose High-Latency I/O Operations Using SystemTap

    Luca Canali on 28 Jul 2015 Topic: this post is about some simple tools and techniques that can be us ...

  2. Mac: 通过蓝牙用安卓手机向Mac发送文件

    1. 打开Mac蓝牙和手机蓝牙 2. 配对 3. mac 系统偏好设置>共享 勾蓝牙共享,选接受并存储 4. 手机发送文件

  3. Redis: Useful commands

    SELECT X - Select database (the X must be int) CONFIG GET databases - Get databases number INFO keys ...

  4. s:actionmessage页面样式失效

    1,  s:actionmessage页面样式失效: 2,解决方式: 将样式直接写入s:actionmessage标签中:<span><s:actionmessage cssSt ...

  5. POJ2393 Yogurt factory 【贪心】

    Yogurt factory Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 6821   Accepted: 3488 De ...

  6. AutoLayout初战----Masonry与FDTemplateLayoutCell实践

    学iOS也有几个月了.一直都是纯代码开发,菜鸟入门,到今天还处在Frame时代.刚好近期项目在提审.有点时间能够学学传说中的AutoLayout.事实上.就是android的相对布局(Relative ...

  7. Timus 1146. Maximum Sum

    1146. Maximum Sum Time limit: 0.5 secondMemory limit: 64 MB Given a 2-dimensional array of positive ...

  8. ※归并排序(merge sort)

    /** 归并排序:通常以递归的方式来实现,它反复将所处理的数组分成两半,并分别对这两半进行排序, 最后再把经过排序的数组归并在一起. */ 归并排序的伪代码实现: 将数组分为两半 对左半部分排序 对右 ...

  9. go语言笔记——append底层实现和Cpp vector无异,只是有返回值,double后返回了新的vector地址而已

    切片的复制与追加 如果想增加切片的容量,我们必须创建一个新的更大的切片并把原分片的内容都拷贝过来.下面的代码描述了从拷贝切片的 copy 函数和向切片追加新元素的 append 函数. 示例 7.12 ...

  10. LCA__st算法&&树上倍增

    st表 #include<cstdio> #include<algorithm> #include<cmath> using namespace std; ]; ] ...