怎樣改變窗口尺寸和移動(dòng)窗口
怎樣改變窗口尺寸和移動(dòng)窗口
今天學(xué)習(xí)啦小編給大家介紹一下怎樣改變窗口尺寸和移動(dòng)窗口吧。供大家參考!
電腦基礎(chǔ)知識(shí)-改變窗口尺寸和移動(dòng)窗口
參考如下:
改變窗口尺寸:
一是移動(dòng)鼠標(biāo)到窗口上下左右邊框上,當(dāng)看到鼠標(biāo)變成上下或左右雙箭頭時(shí),按下鼠標(biāo)左鍵不要松開(kāi),然后拖動(dòng)窗口邊框到合適的地方放開(kāi)鼠標(biāo)左鍵。
二是移動(dòng)鼠標(biāo)到窗口任意一角當(dāng)看到鼠標(biāo)變成斜雙箭頭時(shí),按下鼠標(biāo)左鍵不要松開(kāi),然后拖動(dòng)鼠標(biāo)到合適的地方放開(kāi)左鍵。
三是利用控制菜單命令改變窗口大小。
移動(dòng)窗口:
一是移動(dòng)鼠標(biāo)到窗口標(biāo)題欄,按下鼠標(biāo)左鍵不要松開(kāi),然后拖動(dòng)鼠標(biāo)到合適的地方放開(kāi)左鍵。
二是移動(dòng)鼠標(biāo)到任務(wù)欄,右鍵單擊要移動(dòng)的窗口名稱(chēng),在彈出菜單中單擊選中“移動(dòng)”,然后移動(dòng)鼠標(biāo)到要移動(dòng)的窗口標(biāo)題欄,按下鼠標(biāo)左鍵不要松開(kāi),拖動(dòng)鼠標(biāo)到合適的地方再放開(kāi)左鍵。
三是利用控制菜單命令移動(dòng)窗口。
關(guān)鍵函數(shù):
GetWindowRect(LPRECT)
GetClientRect(LPRECT)
ScreenToClient(LPRECT)
MoveWindow(LPRECT)
(注:這里四個(gè)函數(shù)的參數(shù)既可以是CRect,也可以是CRect*)
CWnd::GetWindowRect() 的作用是獲取CWnd 窗口的坐標(biāo)位置,這個(gè)位置是以屏幕左上角為原點(diǎn)。(順便說(shuō)一下,在窗口OnInitDialog 函數(shù)執(zhí)行的時(shí)候,窗口的左上角是與屏幕左上角相重合的,在OnInitDialog 執(zhí)行結(jié)束之后才被移動(dòng)到屏幕中央并顯示。)
CWnd::GetClientRect() 的作用也是獲取CWnd 窗口的坐標(biāo)位置,但是這個(gè)位置是以該CWnd 窗口自己的客戶(hù)區(qū)(不包括框架)左上角為原點(diǎn),也就是說(shuō)用這個(gè)函數(shù)獲取的CRect 的left 和top 都一定是0.
用上面兩個(gè)函數(shù)獲取到了窗口的坐標(biāo)CRect 之后、可以通過(guò)對(duì)CRect 的top、left、right、bottom 進(jìn)行修改來(lái)設(shè)置一個(gè)想要的窗口的大小與位置。最后用MoveWindow() 函數(shù)就可以把窗口移動(dòng)到新的CRect 指定的矩形區(qū)里去、并改變大小了。
假設(shè)現(xiàn)在有一個(gè)CDialog m_ChildDlg,則可以 m_ChildDlg.MoveWindow(rect); 注意,這里面的rect 必須是以m_ChildDlg 的父窗口為參照系的坐標(biāo)位置。如果m_ChildDlg 沒(méi)有父窗口,那么屏幕桌面就是它的父窗口。這時(shí)可以直接 m_ChildDlg.GetWindowRect(rect); 再m_ChildDlg.MoveWindow(rect);
但如果m_ChildDlg 有自己的父窗口呢?分兩種情況:
1、m_ChildDlg 的左上角頂點(diǎn)坐標(biāo)與其父窗口的客戶(hù)區(qū)的左上角頂點(diǎn)坐標(biāo)重合。這時(shí)可以m_ChildDlg.GetClientRect(rect); 再m_ChildDlg.MoveWindow(rect);
2、否則。假設(shè)其父窗口是CDialog m_PDlg,這時(shí)必須m_ChildDlg.GetWindowRect(rect); 然后m_PDlg.ScreenToClient(rect); 最后才能m_ChildDlg.MoveWindow(rect);
如果MoveWindow之后,界面上顯示有問(wèn)題,不妨試一下InvalidateRect(rect);//添加重繪區(qū)。
UpdateWindow(); //發(fā)送并立即處理WM_PAINT,使重繪區(qū)重畫(huà)。
學(xué)習(xí)啦小編介紹了怎樣改變窗口尺寸和移動(dòng)窗口的相關(guān)知識(shí):,希望你喜歡。