MFC 单文档菜单弹出非模态对话框问题,如何实现随视图区移动而移动,谢谢。

菜单弹出的非模态对话框,弹出后靠在视图去的左边,期望的是与客户区成为一体,即移动主程序时,它也一同移动,就想主视图区的一部分一样。不知道我说明白了没。。。呵呵... 菜单弹出的非模态对话框,弹出后靠在视图去的左边,期望的是与客户区成为一体,即移动主程序时,它也一同移动,就想主视图区的一部分一样。不知道我说明白了没。。。呵呵 展开
 我来答
何处淬吴钩
2011-08-22 · TA获得超过5043个赞
知道大有可为答主
回答量:2947
采纳率:50%
帮助的人:2338万
展开全部
框架窗口响应WM_MOVE消息,然后MoveWindow函数把你的对话框移动到指定位置。
如过对移动过程有要求,再响应WM_MOVING消息(不推荐)
追问
不好意思不是很明白。。。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
AiPPT
2024-09-06 广告
随着AI技术的飞速发展,如今市面上涌现了许多实用易操作的AI生成工具1、简介:AiPPT: 这款AI工具智能理解用户输入的主题,提供“AI智能生成”和“导入本地大纲”的选项,生成的PPT内容丰富多样,可自由编辑和添加元素,图表类型包括柱状图... 点击进入详情页
本回答由AiPPT提供
灌胶点胶机制造37
2011-08-22 · TA获得超过120个赞
知道小有建树答主
回答量:227
采纳率:0%
帮助的人:242万
展开全部
不是很清楚,父子窗口好办,或者不是对话框是属性页呀好办,就是对话框不知道怎么弄了 ,而且你这个是菜单弹出的
更多追问追答
追问
您说的父子窗口是什么情况,可否详细说下,也许可以参考。。。
追答
刚试了下,貌似可以
//CPropView.h
CDlgProperty *dlg;
//CPropView.cpp

void CPropView::OnPage() //弹出的非模态对话框
{
// TODO: Add your command handler code here
dlg=new CDlgProperty(this);
dlg->Create(IDD_DIALOG_PROPERTY,GetDlgItem(IDD_DIALOG_PROPERTY));
dlg->ShowWindow(TRUE);

}
//WM_MOVING 消息,我这里怎么没有现成的,自己手添加的
void CMainFrame::OnMoving(UINT nSide, LPRECT lpRect)
{

CView* pView=this-> GetActiveView();
CRect dlgRect;
if (((CPropView*)pView)->dlg)
{
((CPropView*)pView)->dlg-> DestroyWindow();
delete ((CPropView*)pView)->dlg;
((CPropView*)pView)->dlg = NULL;
}
((CPropView*)pView)->dlg=new CDlgProperty(this);
((CPropView*)pView)->dlg->Create(IDD_DIALOG_PROPERTY,GetDlgItem(IDD_DIALOG_PROPERTY));
((CPropView*)pView)->dlg->GetClientRect(&dlgRect);
((CPropView*)pView)->dlg->MoveWindow(lpRect->left,lpRect->top+50,dlgRect.Width(),dlgRect.Height());
((CPropView*)pView)->dlg->ShowWindow(TRUE);

}
来自:求助得到的回答
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式