大侠们帮帮忙! 如何只让对话框屏蔽alt+f4热键??? 如何只让我的对话框屏蔽alt+f4热键,而不影其他窗口对alt+f4热键的响应??? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 用全局钩子吧,SetWindowHookEx(),钩住Alt+F4 PretranslateMessage这函数应该可以 if ( pMsg->message == WM_KEYDOWN ) { switch ( pMsg->wParam ) .....我没试,你自己试试 如果你只是想某几个对话框(而不是有超多的对话框)就在对话框类的OnSysCommand函数里加上一句 else if( nID == SC_CLOSE ) { return; }如下:void CAsdDlg::OnSysCommand(UINT nID, LPARAM lParam){ if ((nID & 0xFFF0) == IDM_ABOUTBOX) { CAboutDlg dlgAbout; dlgAbout.DoModal(); } else if( nID == SC_CLOSE ) { return; } else { CDialog::OnSysCommand(nID, lParam); }} BOOL CXXXDlg::PreTranslateMessage(MSG* pMsg) { // TODO: Add your specialized code here and/or call the base class if((WM_SYSKEYDOWN == pMsg->message) && (VK_F4 == pMsg->wParam) && (GetKeyState(VK_MENU) & 0x8000)) { AfxMessageBox(_T("You press ALT + F4")); return TRUE; } return CDialog::PreTranslateMessage(pMsg);} BOOL CXXXDlg::PreTranslateMessage(MSG* pMsg) { // TODO: Add your specialized code here and/or call the base class if((WM_SYSKEYDOWN == pMsg->message) && (VK_F4 == pMsg->wParam) && (GetKeyState(VK_MENU) & 0x8000)) { AfxMessageBox(_T("You press ALT + F4")); return TRUE; } return CDialog::PreTranslateMessage(pMsg);} 钩子如何屏蔽 alt+f4,那个虚拟键值怎么找啊 VC怎么绘制波形图 MSComm端口问题 hook搜狗浏览器时的问题 路过的兄弟帮忙解释一个数学符号! 关于程序CPU使用率的问题 vs2005添加函数失败,提示未能返回新代码元素。可能是语法错误. COM高手看看SafeArray&VARIANT问题 如果写一个静态的(设计时期就能操作的)activex控件呢?? 问一个关于拨号网络的问题 各位大哥Sql的数据库还原的问题,我搞了半天搞不定,明天要演示,多谢中位大侠指教,急急,请各位帮帮? 哪位帮我看看为什么出错 ifstream读文件问题 跪求答案
if ( pMsg->message == WM_KEYDOWN )
{
switch ( pMsg->wParam )
.....
我没试,你自己试试
{
return;
}如下:
void CAsdDlg::OnSysCommand(UINT nID, LPARAM lParam)
{
if ((nID & 0xFFF0) == IDM_ABOUTBOX)
{
CAboutDlg dlgAbout;
dlgAbout.DoModal();
}
else if( nID == SC_CLOSE )
{
return;
}
else
{
CDialog::OnSysCommand(nID, lParam);
}
}
{
// TODO: Add your specialized code here and/or call the base class
if((WM_SYSKEYDOWN == pMsg->message) && (VK_F4 == pMsg->wParam) && (GetKeyState(VK_MENU) & 0x8000))
{
AfxMessageBox(_T("You press ALT + F4"));
return TRUE;
}
return CDialog::PreTranslateMessage(pMsg);
}
{
// TODO: Add your specialized code here and/or call the base class
if((WM_SYSKEYDOWN == pMsg->message) && (VK_F4 == pMsg->wParam) && (GetKeyState(VK_MENU) & 0x8000))
{
AfxMessageBox(_T("You press ALT + F4"));
return TRUE;
}
return CDialog::PreTranslateMessage(pMsg);
}