下面是键盘响应弹出对话框 , 没有启动其他线程的时候可以弹出来, 程序运行后很难响应出来,只听到声音。我代码里面还有两个定时器,一个1S的,一个3S的。
BOOL CMoniDlg::PreTranslateMessage(MSG* pMsg)
{ if (pMsg->message == WM_KEYDOWN)
{
switch(pMsg->wParam)
{
case VK_RETURN:
return TRUE;
    case VK_ESCAPE:
 return TRUE;
case 'D':
if ( ::GetKeyState(VK_CONTROL)<0)
{  
MessageBox(L"a");
RealData *pDataDlg = new RealData;
pDataDlg->Create( IDD_DATA , this);
pDataDlg->ShowWindow(SW_SHOW); pDataDlg->GetDlgItem(IDC_ACCOUNT)->SetWindowTextW(Info.wAccount.c_str());

return  TRUE;
}
}
}
return CDialog::PreTranslateMessage(pMsg);   
} 后来我改成线程弹出对话框:
case 'D':
if ( ::GetKeyState(VK_CONTROL)<0)
{
hDisplayThread = CreateThread( NULL, 0, DisplayThread, &Info, CREATE_SUSPENDED, 0 );//创建上传报表数据到网盘的工作者线程
::ResumeThread( hDisplayThread );

}结果悲剧了线程界面是卡死的,线程的弹界面怎么写额