如何在VC中调用的系统对话框让其显示在屏幕中间

henry_sea 2011-03-01 09:08:43
如题,我在工程中调用了系统的打印对话框,它显示在的是屏幕的左上角,如何让其显示在屏幕中间呢?
求助
...全文
713 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
小北__ 2013-08-09
  • 打赏
  • 举报
回复
void CenterWindow( CWnd* pAlternateOwner = NULL ); 参数: pAlternateOwner 指向一个窗口的指针,本窗口将被定位到该窗口(而不是其它的父窗口)的中央。 说明: 这个函数将一个窗口定位到它的父窗口的中央。通常在CDialog::OnInitDialog中调用,用于将对话框定位到应用程序主窗口的中央。在缺省情况下,这个函数将子窗口定位到它们的父窗口的中央,而将弹出窗口定位到拥有者的中央。如果弹出窗口没有拥有者,它将被定位到屏幕中央。如果要使窗口根据不是父窗口也不是拥有者的窗口来定位,则可以将pAlternateOwner参数可以被设为一个有效的窗口。如果要强迫相对于屏幕定位,则应在pAlternateOwner参数中传递CWnd::GetDesktopWindow返回的值。
lvp305703574 2012-12-28
  • 打赏
  • 举报
回复
CenterWindow() 使用这个函数试试.
qiuxinyidian 2011-03-21
  • 打赏
  • 举报
回复
MFC setWindoswPos和moveWindow都可以,设置合适参数调整窗口位置及大小
jianghandaxue 2011-03-21
  • 打赏
  • 举报
回复
计算机中心位置,移动
向立天 2011-03-19
  • 打赏
  • 举报
回复
您好
我是本版版主
此帖已多日无人关注
请您及时结帖
如您认为问题没有解决可按无满意结帖处理
另外本版设置了疑难问题汇总帖
并已在版面置顶
相关规定其帖子中有说明
您可以根据规定提交您帖子的链接
如您目前不想结帖只需回帖说明
我们会删除此结帖通知

见此回复三日内无回应
我们将强制结帖
相关规定详见界面界面版关于版主结帖工作的具体办法
syq13 2011-03-01
  • 打赏
  • 举报
回复
好像有个函数能是对话框居中的。
jieleiping 2011-03-01
  • 打赏
  • 举报
回复
HOOK WH_CALLWNDPROC,然后在HOOK PROC里面的WM_NCCREATE消息里替换窗口过程,在新的窗口过程的WM_INITDIALOG里移动系统窗口到你的位置就行了。。。
zyrr159487 2011-03-01
  • 打赏
  • 举报
回复
http://blog.csdn.net/gxj1680/archive/2010/10/29/5973699.aspx

15,979

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧