C# 中如何获取桌面上的键盘动作
4个回答
2013-07-17
展开全部
楼上这些说的都是当前程序获取到焦点的时候取的方法。。。LZ的意思是要程序只要运行起然后就算没有获取焦点没被激活也能获取系统中的所有键盘和鼠标按键值,,,,这个可以用WINDOWS的API来实现用钩子就可以取到当前计算机的键盘和鼠标的信息。如果你想弄可以加我QQ 我给你代码
2013-07-17
展开全部
把Form的KeyPreview设为true
然后设置KeyDown事件。在KeyDown事件中截获。
如:
this.KeyPreview = true;
this.KeyDown += new System.Windows.Forms.KeyEventHandler(this.Form1_KeyDown);
private void Form1_KeyDown(object sender, System.Windows.Forms.KeyEventArgs e)
{
Console.WriteLine("Form1_KeyDown {0}",e.KeyCode);
}
然后设置KeyDown事件。在KeyDown事件中截获。
如:
this.KeyPreview = true;
this.KeyDown += new System.Windows.Forms.KeyEventHandler(this.Form1_KeyDown);
private void Form1_KeyDown(object sender, System.Windows.Forms.KeyEventArgs e)
{
Console.WriteLine("Form1_KeyDown {0}",e.KeyCode);
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-07-17
展开全部
private void Form1_MouseDown(object sender, MouseEventArgs e)
{
if (Control.ModifierKeys == Keys.Alt && e.Button == MouseButtons.Left)
MessageBox.Show("Alt+Left");
}
//用这个简单方便,的解决问题
{
if (Control.ModifierKeys == Keys.Alt && e.Button == MouseButtons.Left)
MessageBox.Show("Alt+Left");
}
//用这个简单方便,的解决问题
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-07-17
展开全部
using System;
namespace lijie
{
/// <summary>
/// ClassJCBT 的摘要说明。
/// </summary>
public class ClassJCBT:System.Windows.Forms.Button
{
public ClassJCBT()
{
//
// TODO: 在此处添加构造函数逻辑
//
}
public event System.EventHandler LJ;
protected override void OnKeyDown(System.Windows.Forms.KeyEventArgs e)
{
if(LJ != null)
LJ(null,null);
if(e.KeyCode == System.Windows.Forms.Keys.D1)
this.Text = "你按下了数字键“1”";
if(e.KeyCode == System.Windows.Forms.Keys.D2)
this.Text = "你按下了数字键“2”";
//在这里你可以把键盘上所有的健写成数组然后读取
base.OnKeyDown (e);
}
namespace lijie
{
/// <summary>
/// ClassJCBT 的摘要说明。
/// </summary>
public class ClassJCBT:System.Windows.Forms.Button
{
public ClassJCBT()
{
//
// TODO: 在此处添加构造函数逻辑
//
}
public event System.EventHandler LJ;
protected override void OnKeyDown(System.Windows.Forms.KeyEventArgs e)
{
if(LJ != null)
LJ(null,null);
if(e.KeyCode == System.Windows.Forms.Keys.D1)
this.Text = "你按下了数字键“1”";
if(e.KeyCode == System.Windows.Forms.Keys.D2)
this.Text = "你按下了数字键“2”";
//在这里你可以把键盘上所有的健写成数组然后读取
base.OnKeyDown (e);
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询