获取对话框的大小及各控件的位置点(像素点)
2017-09-22 19:06
190 查看
用MFC写的界面不好看,可以采用CDHtmlDialog 对话框方式,调用本地的html页面,而功能还是用c/c++的功能,这样可以做到界面与功能分离,做此事,要将dialog的各个像素点传递给前端。
(1)获取对话框的大小
在本对话框的程序中
CRect rect;
GetClientRect(&rect);
int cx = rect.Width();
int cy = rect.Height();
(2)各控件的位置点(像素点)
以IDC_LIST控件为例:
CRect rect;
GetDlgItem(IDC_LIST_QR)->GetWindowRect(&rect);//获取控件的屏幕坐标
ScreenToClient(&rect);//转换为对话框上的客户坐标
int m_list_x = rect.Width();//控件的宽度
int m_list_y = rect.Height();//控件的高度
CPoint *leftP = new CPoint;
memcpy(leftP, &rect.TopLeft(), sizeof(rect.TopLeft()));//左上点
CPoint *rightPoint = new CPoint;
memcpy(rightPoint, &rect.BottomRight(), sizeof(rect.BottomRight()));//右下点
(1)获取对话框的大小
在本对话框的程序中
CRect rect;
GetClientRect(&rect);
int cx = rect.Width();
int cy = rect.Height();
(2)各控件的位置点(像素点)
以IDC_LIST控件为例:
CRect rect;
GetDlgItem(IDC_LIST_QR)->GetWindowRect(&rect);//获取控件的屏幕坐标
ScreenToClient(&rect);//转换为对话框上的客户坐标
int m_list_x = rect.Width();//控件的宽度
int m_list_y = rect.Height();//控件的高度
CPoint *leftP = new CPoint;
memcpy(leftP, &rect.TopLeft(), sizeof(rect.TopLeft()));//左上点
CPoint *rightPoint = new CPoint;
memcpy(rightPoint, &rect.BottomRight(), sizeof(rect.BottomRight()));//右下点
相关文章推荐
- 根据对话框大小调整控件大小和位置
- 如何实现控件随对话框大小变化而自动调整大小和位置
- VC获取对话框中的控件位置
- 在代码里设置控件在屏幕中的位置和获取屏幕的大小
- 根据对话框大小调整控件大小和位置
- android 获取控件大小和设置调整控件的位置XY
- 对话框控件自动调整大小, 位置
- 如何实现控件随对话框大小变化而自动调整大小和位置
- android 获取控件大小和设置调整控件的位置XY
- mfc获取控件在对话框上的位置
- MFC动态调整对话框控件位置和大小
- easysize_动态调整对话框控件位置和大小
- jQuery学习笔记(控件位置定位、尺寸大小的获取等)
- 如何实现控件随对话框大小变化而自动调整大小和位置
- 动态调整对话框控件位置和大小
- mfc基于对话框的应用程序,如何设置初始对话框大小,移动控件位置
- duilib中获取的控件的位置或者大小不对的可能的原因
- android 获取控件大小和设置调整控件的位置XY
- 获取控件大小和设置调整控件的位置XY示例
- 如何实现控件随对话框大小变化而自动调整大小和位置