VC++之随Formview窗口变化调整控件大小
答案:3 悬赏:60 手机版
解决时间 2021-04-06 07:47
- 提问者网友:浪荡绅士
- 2021-04-05 14:50
VC++之随Formview窗口变化调整控件大小
最佳答案
- 五星知识达人网友:白昼之月
- 2021-04-05 15:43
GetWindowRect换成GetClientRect试试追问CRect rect; //获取控件变化前大小
GetWindowRect(&rect);
ScreenToClient(&rect);//将控件大小转换为在对话框中的区域坐标
这三句就相当于GetClientRect了,而且GetClientRect只是改变rect的大小,不管m_rect.追答m_rect.Width()为0,那么你就用横坐标自己算出一个宽度
GetWindowRect(&rect);
ScreenToClient(&rect);//将控件大小转换为在对话框中的区域坐标
这三句就相当于GetClientRect了,而且GetClientRect只是改变rect的大小,不管m_rect.追答m_rect.Width()为0,那么你就用横坐标自己算出一个宽度
全部回答
- 1楼网友:舍身薄凉客
- 2021-04-05 17:19
::OnSize(UINT nType, int cx, int cy)最开始添加一句:GetClientRect(&m_rect);就可以了。追问如果一开始就加上GetClientRect(&m_rect);那么就失去意义了,因为m_rect存的是界面上次的值,如果一开始就加上那就每次都是新值了追答m_rect_last=m_rect;GetClientRect(&m_rect);那你就不应该用m_rect嘛,用m_rect_last不就完了。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯