文档视图内嵌对话框,对话框标题灰色且没有消息响应 本帖最后由 paniclp 于 2012-10-10 14:07:07 编辑 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 非模态对话框消息循环是父窗体的。到父窗体里面触发消息。或者就用PretranslateMessage来截获右击消息 非常感谢楼上回答,的确可以用PretranslateMessage来处理。不过标题为什么是灰色的?应该怎么处理呢? 因为焦点不在这个对话框上面啊,它已经内嵌了。焦点归属权为你的View。你不喜欢么把标题去掉自己再画一层蓝色的上去 我试用PretranslateMsg来截获消息然后处理BOOL CVideoDlg::PreTranslateMessage(MSG* pMsg) { // TODO: Add your specialized code here and/or call the base class if(pMsg->message == WM_RBUTTONUP) { CPoint point = pMsg->pt; CMenu Menu; Menu.CreatePopupMenu(); if(!m_bRecord) Menu.AppendMenu(MF_STRING, ID_START_RECORD, "开始录像"); else Menu.AppendMenu(MF_STRING, ID_STOP_RECORD, "停止录像"); Menu.TrackPopupMenu(TPM_LEFTALIGN | TPM_RIGHTBUTTON, point.x, point.y, AfxGetMainWnd()); Menu.DestroyMenu(); } return CDialog::PreTranslateMessage(pMsg);}我在这个对话框类来响应,但是右键弹出的菜单是灰色的,除非我在MainFrame来添加消息响应。我想在这个对话框里面响应这个事件,应该怎么做呢? 我想错了,根本原因是Menu.TrackPopupMenu(TPM_LEFTALIGN | TPM_RIGHTBUTTON, point.x, point.y, AfxGetMainWnd());最后一个参数指向MainFrame所以导致菜单消息发送给MainFrame使用对话框指针就可以了 win7怎么彻底关闭全/半角转换快捷键? CListCtrl怎么在第二列插入数据 TC35短信猫发送短信问题 VC编写无线连接器 在对话框中加入位图时出现的问题·急 急问:用VC6写的一个Add-In程序,如何进行调试?? 不知道大家有没有遇到过这样的打印问题 一个关于注册表的问题[RUNONCE项] Access数据库,用Create table语句建表,如何创建一个小数类型的字段?如何设定小数位数? 如何设置和使用环境变量 MFC文件问题 请问如何在打印时候不打印OnDraw中的一句TextOut()
来处理。不过标题为什么是灰色的?
应该怎么处理呢?
你不喜欢么把标题去掉自己再画一层蓝色的上去
然后处理
BOOL CVideoDlg::PreTranslateMessage(MSG* pMsg)
{
// TODO: Add your specialized code here and/or call the base class
if(pMsg->message == WM_RBUTTONUP)
{
CPoint point = pMsg->pt;
CMenu Menu;
Menu.CreatePopupMenu();
if(!m_bRecord)
Menu.AppendMenu(MF_STRING, ID_START_RECORD, "开始录像");
else
Menu.AppendMenu(MF_STRING, ID_STOP_RECORD, "停止录像");
Menu.TrackPopupMenu(TPM_LEFTALIGN | TPM_RIGHTBUTTON, point.x,
point.y, AfxGetMainWnd());
Menu.DestroyMenu();
}
return CDialog::PreTranslateMessage(pMsg);
}我在这个对话框类来响应,但是右键弹出的菜单是灰色的,除非我在MainFrame来添加消息响应。
我想在这个对话框里面响应这个事件,应该怎么做呢?
point.y, AfxGetMainWnd());最后一个参数指向MainFrame所以导致菜单消息发送给MainFrame
使用对话框指针就可以了