MFC设置对话框弹出的位置
2015-06-29 14:16
295 查看
有的时候我们需要设置对话框弹出的位置,比如在按钮的下方弹出,那这个需要怎么做到呢?其实很简单:
1、获取按钮的Window矩形区域,使用GetWindowRect(rect)函数
2、根据矩形区域设置对话框的位置,使用SetWindowPos函数
3、显示以及更新对话框
下面上代码:
关于SetWindowPos函数参数请参考MSDN。
1、获取按钮的Window矩形区域,使用GetWindowRect(rect)函数
2、根据矩形区域设置对话框的位置,使用SetWindowPos函数
3、显示以及更新对话框
下面上代码:
// TODO: Add your control notification handler code here CRect rect; //新建对话框实例 CSensor_Clibration * m_CSensor_Clibration = new CSensor_Clibration(this); //获取按钮的矩形区域 GetDlgItem(IDC_BUTTON_SensorClib)->GetWindowRect(rect); //创建对话框 m_CSensor_Clibration->Create(IDD_DIALOG_SensorClibration); //设置对话框的位置 m_CSensor_Clibration->SetWindowPos(&CWnd::wndTop, rect.left, rect.top + rect.Height() + 2, 0, 0, SWP_NOSIZE); //显示对话框 m_CSensor_Clibration->ShowWindow(SW_SHOW); //更新对话框 m_CSensor_Clibration->UpdateWindow();
关于SetWindowPos函数参数请参考MSDN。
相关文章推荐
- Visual C++中MFC消息的分类
- MFC中Radio Button的用法详解
- MFC创建右键弹出菜单的方法
- MFC中动态创建控件以及事件响应实现方法
- MFC程序对文件的处理方法
- MFC自定义消息的实现方法
- MFC之ComboBox控件用法实例教程
- MFC绘制不规则窗体的方法
- IE8引发 VS2005/2008 MFC向导出错的解决方案
- MFC实现全屏功能代码实例
- C++中MFC Tab Control控件的使用详解
- MFC程序设计常用技巧汇总
- MFC扩展DLL中导出类和对话框的实现方法
- VC中SDK与MFC的区别浅析
- VC MFC非模态对话框的实现方法
- MFC程序执行过程深入剖析
- C和MFC巧妙获取外网IP的两种实现方法
- MFC创建模态对话框和非模态对话框的方法
- MFC控件之CListCtrl的应用实例教程
- VS2010/MFC编程入门之前言