我要获取ctrl+a
然后在窗口上用 textout输出 我已经按下了ctrl+a
问题是
WM_KEYDOWN里 不能用VK_A
而且 我用if((wParam&VK_CONTROL)&&(wParam&VK_A))
结果是 没用
要怎么实现 同时按下CTRL+A窗口才会输出那句话
然后在窗口上用 textout输出 我已经按下了ctrl+a
问题是
WM_KEYDOWN里 不能用VK_A
而且 我用if((wParam&VK_CONTROL)&&(wParam&VK_A))
结果是 没用
要怎么实现 同时按下CTRL+A窗口才会输出那句话
{
if(::GetKeyState(VK_CONTROL)<0)
{
if(pMsg->wParam == 0x61)//‘a‘的ASCII码
{
::SetActiveWindow(::FindWindowW(_T("CLookDynamicDlg"),0));
}
}
}
LRESULT CALLBACK KeyBoardProc(int nCode, WPARAM wParam, LPARAM lParam)
{
BOOL bCtrlKeyDown =
GetAsyncKeyState(VK_CONTROL)>>((sizeof(SHORT) * 8) - 1);
if((lParam & 0x80000000 )==0)//键盘按下
{
if (nCode==HC_ACTION)
{
if (wParam == VK_F3 )//&& bCtrlKeyDown) // Ctrl+Esc
{
AfxMessageBox(_T("vk_f"));
}
} if(wParam == 'A'&& bCtrlKeyDown)
{
AfxMessageBox(L"A+ctrl");
}
...
}
case WM_SYSKEYDOWN :
if (GetKeyState (18) < 0) //Alt键
{
if (LOWORD (wParam) == 67) // C 键
{
SendMessage (GetParent (hwnd), WM_CLOSE, 0, 0);
}
}
break;
C/SDK