2 jujiawu1024 jujiawu1024 于 2016.03.31 00:06 提问

一个有关MFC的OnSize和MoveWindow结合的问题
mfc

是不是调用OnSize,MFC系统就会调用MoveWindow函数,而不需要再另外调用了呢?

3个回答

caozhy
caozhy   Ds   Rxr 2016.03.31 00:16
已采纳

说反了,调用MoveWindow会触发wm_size消息,从而触发onsize函数

CSDNXIAON
CSDNXIAON   2016.03.31 00:12

一个〈深入浅出mfc〉这本书中的一个问题,请大家多多次教
mfc onsize() 乱序
MFC 关于MoveWindow函数的问题
----------------------同志你好,我是CSDN问答机器人小N,奉组织之命为你提供参考答案,编程尚未成功,同志仍需努力!

VisualEleven
VisualEleven   Ds   Rxr 2016.04.01 17:43

MoveWindow sends the WM_WINDOWPOSCHANGING, WM_WINDOWPOSCHANGED, WM_MOVE, WM_SIZE, and WM_NCCALCSIZE messages to the window.

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
MoveWindow后OnSize没被调用的原因:WM_GETMINMAXINFO限制了
void CMainFrame::OnGetMinMaxInfo(MINMAXINFO* lpMMI) { //调整最小高度与宽度,如果需要的话 lpMMI->ptMinTrackSize.x = 640; lpMMI->ptMinTrackSize.y = 480; //调整最大高度与宽度,如果需要的话 lpMMI->ptMaxTrackSize.x = 1366; lpMMI->
MFC CListView/CListCtrl OnSize时自动排列图标(尽量不出现滚动条)
创建时用风格LVS_AUTOARRANGE 或者每次MoveWindow之后调用Arrange函数
对话框的OnSize()和OnWindowPosChanged()的理解
最近的项目是一个对话框的项目,之前没有做过这种项目,
64位 win7中设置窗口大小时 未能收到WM_SIZE消息
参考窗口管理器功能的递归调用可能会意外失败
MFC 关于MoveWindow函数的问题
今天在创建duik
用SendMessage/PostMessage发送WM_SIZE消息
一般情况下,调用MoveWindow()/SetWindowPos()函数会自动引发WM_SIZE消息,但有时候也需要手工发送该消息,使窗口调整大小和布局。 SendMessage()和PostMessage()函数发送WM_SIZE的格式是一样的,在此就只以SendMessage()函数为例。 LONG  xy; xy =MAKELONG(x, y); SendMessage(WM_
控件大小随窗口变化的方法(MFC)
VC++之根据对话框大小调整控件大小 1、在对话框类中加入成员变量CRect m_rect;用于保存对话框大小变化前的大小; 2、在对话框的OnInitDialog()函数中获取对话框创建时的大小:GetClientRect(&m_rect); 3、在WM_SIZE的响应函数OnSize()中加入以下代码: CWnd *pWnd;  pWnd = GetDlgItem(IDC_LIST)
MoveWindow() SetWindowPos()的区别于联系
MoveWindow() SetWindowPos()的区别于联系  敲代码时,突然发现有一个背景图片无法显示,百思不得其解,最终发现是MoveWindow() SetWindowPos()这两个函数的使用不当造成的。   这里把这两个函数的前世今生给分析一下。   先看MoveWindow()函数,用于改变窗口的位置和尺寸,对于顶层窗口,按照屏幕对齐与左上角,对于子窗口,则
MFC中的MoveWindow and SetWindowPos
MoveWindow只能设置窗口的大小和位置;SetWindowPos拥有MoveWindow的全部功能之外,还可以设置窗口的层叠关系(如,把指定的窗口放在所有窗口的最上层--always   on   top就可以用这个函数、或者把指定的窗口放在另一个窗口的下层,等等)。 没有什么优缺点可言,只是功能上的大小有别。你完全可以不用MoveWindow,而只用SetWindowPos;但是,在只要设
MOVEWINDOW 与setwindowspos
 MoveWindow只能设置窗口的大小和位置;SetWindowPos拥有MoveWindow的全部功能之外,还可以设置窗口的层叠关系(如,把指定的窗口放在所有窗口的最上层--always   on   top就可以用这个函数、或者把指定的窗口放在另一个窗口的下层,等等)。没有什么优缺点可言,只是功能上的大小有别。你完全可以不用MoveWindow,而只用SetWindowPos;