HotKey.RegisterHotKey ( Handle , 100 ,HldDBLib.HotKey.KeyModifiers.Shift , Keys.I );
Keys.I,这个I是我从配置文件中读出来的,配置文件中是一个字符,请问题如何加入到
( Handle , 100 ,HldDBLib.HotKey.KeyModifiers.Shift , Keys.I )这个参数中!!
先谢谢
Keys.I,这个I是我从配置文件中读出来的,配置文件中是一个字符,请问题如何加入到
( Handle , 100 ,HldDBLib.HotKey.KeyModifiers.Shift , Keys.I )这个参数中!!
先谢谢
我好像是没用过,是谁提供的类库。应该有相应的转换代码的。
string str=config......//取出配置文件的数据
Keys k=keys.A;
switch(str)
{
case "B":
k=Keys.B
...
..
}
我的系统在登录时,就去读配置文件,
//注册热键Shift+S,Id号为100。HotKey.KeyModifiers.Shift也可以直接使用数字4来表示。
//HotKey.RegisterHotKey(Handle, 100, HotKey.KeyModifiers.Shift, Keys.S);//class HotKey
//{
// //如果函数执行成功,返回值不为0。
// //如果函数执行失败,返回值为0。要得到扩展错误信息,调用GetLastError。
// [DllImport ( "user32.dll" , SetLastError = true )]
// public static extern bool RegisterHotKey
// (
// IntPtr hWnd , //要定义热键的窗口的句柄
// int id , //定义热键ID(不能与其它ID重复)
// KeyModifiers fsModifiers ,//标识热键是否在按Alt、Ctrl、Shift、Windows等键时才会生效
// Keys vk //定义热键的内容
// );
// [DllImport ( "user32.dll" , SetLastError = true )]
// public static extern bool UnregisterHotKey
// (
// IntPtr hWnd , //要取消热键的窗口的句柄
// int id //要取消热键的ID
// );
// //定义了辅助键的名称(将数字转变为字符以便于记忆,也可去除此枚举而直接使用数值)
// [Flags ( )]
// public enum KeyModifiers
// {
// None = 0 ,
// Alt = 1 ,
// Ctrl = 2 ,
// Shift = 4 ,
// WindowsKey = 8 // //MOD_ALT = 0x1, MOD_CONTROL = 0x2,MOD_SHIFT = 0x4,MOD_WIN = 0x8
// }
//}
如何把字符加入到Keys.(XXX)的(XXX)中。
比如enter是0x13 你把他们的code取出来直接存
KeysConverter kc=new KeysConverter();
Keys k = (Keys)kc.ConvertFromString(ss); //将字符串转换为Keys
if (k == Keys.I) MessageBox.Show("OK"); //验证一下,果然可以.