打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
VS2008 MFC用向导生成的SDI的OFFICE2007风格的程序如何修改初始化窗口的位置和大小
这个问题困扰我好几天了,之前在网上搜索了,有如下解决方案,
1. 在CmainWindow的PrecreateWindow函数中对cs.x cs.y cs.cx cs.cy 等值进行设定即可。窗口生成的大小和位置根本不是我设定的想要的。
2. 在CmainWindow的OnCreate函数中调用SetWindowPos来设定窗口的位置和大小,尝试之后,发现SetWindowPos是将窗口定位到了我想要的地方和指定的大小,但随后调用了CRibbonTestView的OnInitialUpdate函数
void CRibbonTestView::OnInitialUpdate()
{
        CFormView::OnInitialUpdate();
        GetParentFrame()->RecalcLayout();
        ResizeParentToFit();
  
}
窗口位置和大小又改变了,最后程序出来的窗口的位置和大小也不是我指定的
还有一点我注意到了就是他窗口的大小和位置和最近一次关闭时是一样,如果它是在注册表里保存了这些信息下一次启动窗口的时候再从注册表内读出来设置的话,我这样还有机会能指定初始化窗口的位置和大小吗?
在你的程序一次都没有运行的情况下,改 CMainFrame 的初始化函数改 cx cy 即可;
  -------------------------------------------------------------------------------------------------------------------
如果你已经运行过一次程序,改完 cx cy 之后,还需要清理一下注册表
HKCUsoftware[YourComp][YouApp]
再运行就 ok 了 
  
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
VC6.0 SetWindowPos()
C++ MFC 改变控件大小和位置
如何设计MDI的窗口样式
控件大小随窗口变化的方法(MFC)
CY68013 FPGA通信联调总结
UC头条:1.操作系统如何从BIOS到MBR的
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服