C# winform 失去焦点 但在我按下ctrl+v winform获取焦点

2025-03-05 00:31:37
推荐回答(3个)
回答1:

一般情况在,当我们的软件拥有焦点时,C# 只要注册一个键盘事件就可以拦截 键盘按键; 但: 软件在后台运行,就意味着你的焦点可能在系统上,也可能在 其他软件上,也可能在自己的软件上;——这种焦点都不在自己的软件上又想 捕获 ctrl+v 命令,方法只有一个: 拦截Windows 系统消息;你将 Windows 消息进行拦截,过滤出来 所有的键盘的 ctrl+v 按键——然后处理为 自己的 程序; 源码有——但是处理的是 拦截ctrl+S,禁止 快捷键保存;拦截 ctrl+Alt+Delete,禁止键盘启动 任务管理器的;要不要?(不过,即使要,我也不知道自己的磁盘上找不找得到);

回答2:

截获键盘消息,对CTRL+V进行判断处理

回答3:

这个好像要调用系统的API了,,