对话框资源和代码都在DLL中,通过热键呼出,但是为什么对话框无法正常显示出来,只是一块停住的游戏背景,鼠标移上去也看不到,但却存在,如果瞄准标题栏点住鼠标能显示出来,放开就没了?
用模式对话框能显示出来,但鼠标移上去还是看不到。
技术文章中有模式文章:“在DirectX下弹出对话框 ”
http://www.csdn.net/develop/Read_Article.asp?Id=15381
用模式对话框能显示出来,但鼠标移上去还是看不到。
技术文章中有模式文章:“在DirectX下弹出对话框 ”
http://www.csdn.net/develop/Read_Article.asp?Id=15381
应该比较特殊~
不改资源就加函数ShowWindow()也行....
LRESULT __declspec(dllexport)__stdcall CALLBACK KeyboardProc(int nCode, WPARAM wParam, LPARAM lParam){
AFX_MANAGE_STATE(AfxGetStaticModuleState());
//if(((DWORD)lParam & 0x40000000) && (HC_ACTION == nCode));
WORD wKey = (WORD)wParam;
if((HIWORD(lParam) & KF_UP) == 0 && HC_ACTION == nCode)
{
if(wKey == VK_ADD)//是热键
{
//获取前台窗口(游戏窗口)
HWND hWnd = ::GetForegroundWindow();
if(!g_bExist )
{
g_pDlg = new CNetClientDlg;
g_pDlg->Create(IDD_STATDIALOG, CWnd::FromHandle(hWnd));
g_pDlg->ShowWindow(SW_SHOW);
g_bExist=1;
}
}
} LRESULT RetVal = CallNextHookEx(g_hKeyHook, nCode, wParam, lParam );
return RetVal;}