我想在我的应用程序中创建,而不是当这个应用程序在后台时,当我点击F10时,带循环的函数将开始。
这是我的代码:
namespace test
{
public partial class Form1 : Form
{
[DllImport("user32.dll")]
public static extern bool RegisterHotKey(IntPtr hWnd, int id, int fsModifiers, int vlc);
[DllImport("user32.dll")]
public static extern bool UnregisterHotKey(IntPtr hWnd, int id);
public Form1() //(lub Form1_Load(object sender, System.EventArgs e))
{
RegisterHotKey(this.Handle,9000, 2, (int) Keys.F10);
InitializeComponent();
}
private void Form1_Closing(object sender, System.ComponentModel.CancelEventArgs e)
{
UnregisterHotKey(this.Handle,9000);
UnregisterHotKey(this.Handle,9001);
}
protected override void WndProc(ref Message m)
{
base.WndProc(ref m);
switch (m.Msg)
{
case 0x312:
switch (m.WParam.ToInt32())
{
case 9000:
//code
break;
case 9001:
//code
break;
}
break;
}
}
}
}
但是不要工作:(
你能帮我吗?
答案 0 :(得分:1)
当我点击F10
时
错误的密钥,您必须输入Ctrl + F10。您将2作为第3个参数传递给RegisterHotKey(),即MOD_CONTROL。使用const或enum声明而不是原始文字可以帮助你陷入成功之中。