如何设置模态对话框的显示位置

牧羊人Full 2014-03-02 10:46:21
BOOL CGetNameDlg::OnInitDialog() 
{
CDialog::OnInitDialog();

// TODO: Add extra initialization here

//方法一
CRect rect;
CWnd* pWnd = AfxGetMainWnd();
pWnd->GetWindowRect(rect);

//方法二
CRect rect2;
pWnd->GetClientRect(rect2);
pWnd->ClientToScreen(rect2);

MoveWindow(rect.left, rect.top + 50, 300, 150);
// MoveWindow(rect2.left, rect2.top, 300, 150);


return TRUE; // return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE
}


我用以上两种方法获得屏幕坐标,第一种方法能将模态对话框显示到指定位置;第二种方法虽然能获得想要的坐标却不能将对话框显示到指定位置。
贴出显示的效果图

第一种方法


第二种方法

我调试过,获得的坐标是没问题的,为什么第二种方法就不能显示到正确位置了呢?
急求大侠解答
...全文
196 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
schlafenhamster 2014-03-02
  • 打赏
  • 举报
回复
CenterWindow()

15,979

社区成员

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

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