У меня есть приложение, которое хочет обнаружить несколько ключей на клавиатуре (событие keydown в C#). В последнем случае у меня ограниченное обнаружение ключей (может быть 4 ключа) при блокировке событий, а также я не могу запустить событие, когда «fn» keydown. есть 2 вопроса: 1. Как обнаружить ключи как можно больше 2. Как обнаружить ключи Fn при событии keydown key.несколько ключей keydown на клавиатуре одновременно раз в C#
Здесь я использую библиотеку globalKeyboardHook, которую я нашел из других решений.
private void Form1_Load(object sender, EventArgs e)
{
gkh.HookedKeys.Add(Keys.A);
gkh.HookedKeys.Add(Keys.B);
gkh.HookedKeys.Add(Keys.D);
gkh.HookedKeys.Add(Keys.F);
gkh.HookedKeys.Add(Keys.G);
gkh.HookedKeys.Add(Keys.H);
gkh.HookedKeys.Add(Keys.J);
gkh.HookedKeys.Add(Keys.K);
gkh.HookedKeys.Add(Keys.L);
gkh.HookedKeys.Add(Keys.Z);
gkh.HookedKeys.Add(Keys.X);
gkh.HookedKeys.Add(Keys.C);
gkh.HookedKeys.Add(Keys.V);
gkh.HookedKeys.Add(Keys.B);
gkh.HookedKeys.Add(Keys.N);
gkh.HookedKeys.Add(Keys.M);
gkh.HookedKeys.Add(Keys.Q);
gkh.HookedKeys.Add(Keys.W);
gkh.HookedKeys.Add(Keys.E);
gkh.HookedKeys.Add(Keys.R);
gkh.HookedKeys.Add(Keys.T);
gkh.HookedKeys.Add(Keys.Y);
gkh.HookedKeys.Add(Keys.U);
gkh.HookedKeys.Add(Keys.I);
gkh.HookedKeys.Add(Keys.O);
gkh.HookedKeys.Add(Keys.P);
gkh.HookedKeys.Add(Keys.NumLock);
gkh.HookedKeys.Add(Keys.Insert);
gkh.HookedKeys.Add(Keys.FinalMode);
gkh.KeyDown += new KeyEventHandler(gkh_KeyDown);
}
void gkh_KeyDown(object sender, KeyEventArgs e)
{
Console.WriteLine(e.KeyCode.ToString());
e.Handled = true;
}
Мне очень приятно, если вы можете мне помочь. спасибо.
его часть архитектуры клавиатур, которые вы не можете прочитать другие, чем те, такие как Ctrl и альт – Sayse
да хороший ответ несколько ключей. спасибо pnuts – Wintronic