关于模态对话框的消息转发 请教大家,我有一个SDI界面,主窗体为mainframe, 打开About对话框(模态)后, 如果用户输入快捷键,比如Ctrl+O, 我想让mainframe 来响应该快捷键,请问办得到吗? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 不能,只有About对话框退出了才能方法1:About对话框响应,提交给mainframe(父窗口)2:全局钩子,由mainframe处理 用间接方法可以做到,比如先由模态对话框处理,在模态对话框中通过SendMessage一个自定义消息让主窗口处理。或是用全局键盘钩子。 你可以吧About对话框改成非模态对话框 不能,只有About对话框退出了才能方法1:About对话框响应,提交给mainframe(父窗口)2:全局钩子,由mainframe处理要不你直接定义热键 CAboutDialog::PreTranslateMessage(MSG* pMsg){ if (::AfxGetMainFrame()->PreTranslateMessage(pMsg)) return TRUE; // or //if (::TranslateAccelerator(::AfxGetMainFrame()->GetSateHwnd(), AfxGetMainFrame()->m_hAcceleTable, pMsg) // return TRUE; return CDialog::PreTranslateMessage(pMsg);} MFC如何实现键盘按键与否可以使界面上的按钮图标改变 我在编译别人的一个工程中有这样一个错误?请大家帮忙看看 怎么求多边形的面积? 常见连接错误,求高手指点 LPDISPATCH 类型如何取出值。 初学者提问:如何在鼠标消息(OnLButtonDown、OnRButtonDown)中判断shift、ctrl键的状态啊 鼠标 气泡的问题,.. ado访问数据库,如何能得到数据库中已存在的表名,和这个表的列名? 一个关于定义const变量的问题。 DDE的问题: 多线程的问题 TRACE 显示 CString 字符串问题 定义了 UNICODE
方法1:About对话框响应,提交给mainframe(父窗口)
2:全局钩子,由mainframe处理
方法1:About对话框响应,提交给mainframe(父窗口)
2:全局钩子,由mainframe处理
要不你直接定义热键
CAboutDialog::PreTranslateMessage(MSG* pMsg)
{
if (::AfxGetMainFrame()->PreTranslateMessage(pMsg))
return TRUE;
// or
//if (::TranslateAccelerator(::AfxGetMainFrame()->GetSateHwnd(), AfxGetMainFrame()->m_hAcceleTable, pMsg)
// return TRUE;
return CDialog::PreTranslateMessage(pMsg);
}