【发布时间】:2023-04-08 23:26:01
【问题描述】:
这段代码
for (int i = 0; i < 256; i++)
{
if (GetAsyncKeyState(i) == -32767)
{
MessageBox.Show(i.ToString());
}
}
不包括功能键(F1、F2 等)或数字键盘键。
我需要做什么才能使此代码适用于所有键?
提前致谢。
【问题讨论】:
-
你看过Keys enum吗?
-
@GabrielGM 是的,我做到了。但是没有可用于将密钥保存在 *.ini 文件中的值。
-
不太清楚我理解你所说的ini文件是什么意思。用foreach循环?
-
是的,也许我解释得不好。我想在程序中自定义用户的热键。我想,我可以将所有键的键码作为整数保存到 ini 文件中。要向用户询问我想要一个文本框的密钥。在此文本框中,用户应该能够使用任何键。像字母这样的普通键不是问题,但是如何检测 F1 到 F12 键以及如何将它们保存到 ini 文件中?提前致谢。
-
F1 到 F12 在枚举中也用 int 表示(见referencesource.microsoft.com/#System.Windows.Forms/winforms/…)