首页上一页 1 下一页尾页 1 条记录 1/1页
请问IDC_HOTKEY控件如何判断按了几个键?
发表在C语言图书答疑
2010-02-10
是否精华
是
否
版块置顶:
是
否
我在用HOTKEY控件时遇到不能同时注册三个控件..
如何判断GetHotKey注册热键的键数?
代码如下:
void CTextDlg::OnOK()
{
CString str;
GetDlgItemText(IDOK,str);
if (str == "注册")
{
WORD wVirtualKeyCode;
WORD wModifiers;
m_hotkey.GetHotKey(wVirtualKeyCode,wModifiers);
if (RegisterHotKey(m_hWnd,100,wModifiers,wVirtualKeyCode)== TRUE)
{
SetDlgItemText(IDOK,"卸载");
MessageBox("热键注册成功");
}
else
MessageBox("键盘注册失败");
}
else if(str == "卸载")
{
if (UnregisterHotKey(m_hWnd,100)== FALSE)
{
SetDlgItemText(IDOK,"注册");
MessageBox("热键卸载成功");
}
else
MessageBox("热键卸载失败");
}
str.Empty();
}
void CTextDlg::OnHotKey(WPARAM wParam,LPARAM lParam)
{ //自定义消息 WM_HOTKEY
if (wParam == 100)
{
MessageBox("这是热键呼叫出来的消息",NULL,MB_OK);
}
else
return;
}
如何判断GetHotKey注册热键的键数?
代码如下:
void CTextDlg::OnOK()
{
CString str;
GetDlgItemText(IDOK,str);
if (str == "注册")
{
WORD wVirtualKeyCode;
WORD wModifiers;
m_hotkey.GetHotKey(wVirtualKeyCode,wModifiers);
if (RegisterHotKey(m_hWnd,100,wModifiers,wVirtualKeyCode)== TRUE)
{
SetDlgItemText(IDOK,"卸载");
MessageBox("热键注册成功");
}
else
MessageBox("键盘注册失败");
}
else if(str == "卸载")
{
if (UnregisterHotKey(m_hWnd,100)== FALSE)
{
SetDlgItemText(IDOK,"注册");
MessageBox("热键卸载成功");
}
else
MessageBox("热键卸载失败");
}
str.Empty();
}
void CTextDlg::OnHotKey(WPARAM wParam,LPARAM lParam)
{ //自定义消息 WM_HOTKEY
if (wParam == 100)
{
MessageBox("这是热键呼叫出来的消息",NULL,MB_OK);
}
else
return;
}