2024年4月11日发(作者:)
怎样改变窗口尺寸和移动窗口
今天店铺给大家介绍一下怎样改变窗口尺寸和移动窗口吧。供大家参考!
电脑基础知识-改变窗口尺寸和移动窗口
参考如下:
改变窗口尺寸:
一是移动鼠标到窗口上下左右边框上,当看到鼠标变成上下或左右双箭头时,按下鼠
标左键不要松开,然后拖动窗口边框到合适的地方放开鼠标左键。
二是移动鼠标到窗口任意一角当看到鼠标变成斜双箭头时,按下鼠标左键不要松开,
然后拖动鼠标到合适的地方放开左键。
三是利用控制菜单命令改变窗口大小。
移动窗口:
一是移动鼠标到窗口标题栏,按下鼠标左键不要松开,然后拖动鼠标到合适的地方放
开左键。
二是移动鼠标到任务栏,右键单击要移动的窗口名称,在弹出菜单中单击选中“移
动”,然后移动鼠标到要移动的窗口标题栏,按下鼠标左键不要松开,拖动鼠标到合适的
地方再放开左键。
三是利用控制菜单命令移动窗口。
关键函数:
GetWindowRect(LPRECT)
GetClientRect(LPRECT)
ScreenToClient(LPRECT)
MoveWindow(LPRECT)
(注:这里四个函数的参数既可以是CRect,也可以是CRect*)
CWnd::GetWindowRect() 的作用是获取CWnd 窗口的坐标位置,这个位置是以屏
幕左上角为原点。(顺便说一下,在窗口OnInitDialog 函数执行的时候,窗口的左上角是
与屏幕左上角相重合的,在OnInitDialog 执行结束之后才被移动到屏幕中央并显示。)
CWnd::GetClientRect() 的作用也是获取CWnd 窗口的坐标位置,但是这个位置是以
该CWnd 窗口自己的客户区(不包括框架)左上角为原点,也就是说用这个函数获取的
CRect 的left 和top 都一定是0.
用上面两个函数获取到了窗口的坐标CRect 之后、可以通过对CRect 的top、left、
right、bottom 进行修改来设置一个想要的窗口的大小与位置。最后用MoveWindow()
函数就可以把窗口移动到新的CRect 指定的矩形区里去、并改变大小了。
假设现在有一个CDialog m_ChildDlg,则可以 m_ndow(rect);
注意,这里面的rect 必须是以m_ChildDlg 的父窗口为参照系的坐标位置。如果
m_ChildDlg 没有父窗口,那么屏幕桌面就是它的父窗口。这时可以直接
m_dowRect(rect); 再m_ndow(rect);
但如果m_ChildDlg 有自己的父窗口呢?分两种情况:
1、m_ChildDlg 的左上角顶点坐标与其父窗口的客户区的左上角顶点坐标重合。这
时可以m_entRect(rect); 再m_ndow(rect);
2、否则。假设其父窗口是CDialog m_PDlg,这时必须
m_dowRect(rect); 然后m_ToClient(rect); 最后才能
m_ndow(rect);
如果MoveWindow之后,界面上显示有问题,不妨试一下InvalidateRect(rect);//
添加重绘区。
UpdateWindow(); //发送并立即处理WM_PAINT,使重绘区重画。
店铺介绍了怎样改变窗口尺寸和移动窗口的相关知识:,希望你喜欢。


发布评论