注册热键

时间:2009-01-30 19:39:07

标签: c# .net windows vb.net

我有这个功能: RegisterGlobalHotKey(Keys.F6,MOD_SHIFT | MOD_CONTROL); 调用API以在系统中注册全局快捷键。 void RegisterGlobalHotKey(Keys hotkey,int modifiers)

我创建了一个小选项表单,将此键设置为变量而非固定值,如下所示: RegisterGlobalHotKey(VARIABLE1,VARIABLE2 | VARIABLE3);

请参阅随附的选项表单以了解更多

主要问题是如何将组合框字符串值转换为Keys枚举值

2 个答案:

答案 0 :(得分:1)

假设您可以要求用户准确输入Enum值的名称,您可以将文本传递给Enum.Parse,这将返回具有指定名称的枚举值。

答案 1 :(得分:0)

如何将字符串映射到Keys,将其他字符串映射到修饰符?

地图 图

这样可以避免在代码中进行一堆if-else字符串比较。

编辑:实际上,我认为我过去也使用了安迪的建议。