MFC類庫中有哪些可視對象類
MFC(Microsoft Foundation Classes)是微軟基礎(chǔ)類庫的簡稱,是微軟公司實現(xiàn)的一個C 類庫,主要封裝了大部分的Windows API函數(shù)。本文將介紹MFC類庫中的一些常見可
MFC(Microsoft Foundation Classes)是微軟基礎(chǔ)類庫的簡稱,是微軟公司實現(xiàn)的一個C 類庫,主要封裝了大部分的Windows API函數(shù)。本文將介紹MFC類庫中的一些常見可視對象類。
1. CWnd類
CWnd類提供了MFC中所有窗口類的基類。CWnd與Windows窗口有所不同,但它們又是緊密相連的。CWnd對象是由CWnd的構(gòu)造函數(shù)和析構(gòu)函數(shù)建立和取消的,而Windows窗口與此不同,它是Windows的一個結(jié)構(gòu),是由Create成員函數(shù)建立的,DestroyWindow函數(shù)破壞Windows窗口而不是破壞對象。
(1) CWnd類的公共數(shù)據(jù)成員:
- m_hWnd:標(biāo)識連接到該CWnd對象上的HWND。
(2) CWnd類的初始化函數(shù):
- Create:創(chuàng)建并初始化與該CWnd對象相聯(lián)系的子窗口。
- PreCreateWindow:在建立連接到這個CWnd對象的Windows窗口之前調(diào)用此函數(shù)。
- GetStyle:返回當(dāng)前窗口的風(fēng)格。
- SubclassWindow:將一個窗口連接給一個CWnd對象并使其通過該CWnd的消息映射傳遞消息。
- FromHandle:給出一個窗口句柄時,返回一個CWnd對象的指針。
- GetSafeHandle:返回m_hWnd;若此指針為NULL,則返回NULL。
2. 窗口狀態(tài)函數(shù)
- EnableWindow:允許或禁止鼠標(biāo)和鍵盤輸入。
- GetActiveWindow:獲取活動的窗口。
- SetActiveWindow:激活窗口。
- SetFocus:請求輸入焦點。
- GetFocus:獲取當(dāng)前具有輸入焦點的CWnd。
3. 窗口大小和位置函數(shù)
- GetWindowPlacement:獲取一個窗口顯示狀態(tài)及正常、最小化和最大化的窗口位置。
- SetWindowPlacement:設(shè)置一個窗口顯示狀態(tài)及正常、最小化和最大化的窗口位置。
- MoveWindow:改變CWnd的位置和大小。
- SetWindowPos:改變子窗口、彈出式窗口和頂層窗口的大小、位置和次序。
- GetWindowRect:獲取CWnd的屏幕坐標(biāo)。
- GetClientRect:獲取CWnd客戶區(qū)的大小。
4. 訪問窗口函數(shù)
- FindWindow:迅速返回由窗口類和窗口名標(biāo)識的窗口句柄。
- GetTopWindow:返回屬于CWnd的第一個子窗口。
- GetParent:獲取CWnd的父窗口。
- GetDlgItem:由指定的對話框獲取具有指定ID的控件。
- GetDescendantWindow:查詢所有派生窗口,并返回具有指定ID的窗口。
- CenterWindow:將一個窗口相對于其父窗口居中定位。
5. 更新/繪制函數(shù)
- GetDC:獲取一個客戶區(qū)的設(shè)備描述表。
- GetWindowDC:獲取整個窗口的,包括標(biāo)題欄、菜單和滾動條的設(shè)備描述表。
- ReleaseDC:釋放客戶區(qū)和窗口的設(shè)備描述表。
- Invalidate:使整個客戶區(qū)無效。
- ShowWindow:顯示或隱藏窗口。
6. 窗口文本函數(shù)
- SetWindowText:將窗口的標(biāo)題設(shè)置為指定的文本。
- GetWindowText:返回窗口的標(biāo)題。
- SetFont:設(shè)置當(dāng)前的字體。
- GetFont:獲取當(dāng)前的字體。
7. 滾動函數(shù)
- GetScrollPos:獲取滾動條的當(dāng)前位置。
- ScrollWindow:卷滾客戶區(qū)的內(nèi)容。
- SetScrollPos:設(shè)置一個滾動框的當(dāng)前位置,若指定新位置,則重畫滾動條。
8. 菜單函數(shù)
- GetMenu:獲取指向指定菜單的指針。
- SetMenu:將菜單設(shè)置為指定的菜單。
- HiliteMenuItem:在一個頂層菜單上高亮度顯示或除去高亮度顯示。
9. 剪貼板函數(shù)
- OpenClipboard:打開剪貼板。
- GetClipboardOwner:獲取指向剪貼板的當(dāng)前擁有者的指針。
- GetOpenClipboardWindow:獲取指向當(dāng)前剪貼板窗口的指針。