最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

VC編程控件類(lèi)HTControl之CHTGDIManager GDI資源管理類(lèi)用法解析

 更新時(shí)間:2014年08月11日 11:35:02   投稿:shichen2014  
這篇文章主要介紹了VC編程控件類(lèi)HTControl之CHTGDIManager GDI資源管理類(lèi)用法解析,需要的朋友可以參考下

本文主要介紹了VC編程控件類(lèi)HTControl的CHTGDIManager GDI資源管理類(lèi)用法,MFC提供的CBitmap類(lèi)的LoadBitmap接口只能從EXE內(nèi)部獲取位圖,但是很多情況下需要從EXE外部獲取,CHTGDIManager類(lèi)提供了從EXE外部獲取位圖的接口,使用方法如下:

m_hBmpBtnCloseNormal = m_HTGDIManager.GetBitmap(_T(".\\pic\\btn_close_normal.png"));

#if !defined(__CHTGDIMANAGER_H__)
#define __CHTGDIMANAGER_H__
class AFX_CLASS_EXPORT CHTGDIManager
{
public:
 CHTGDIManager(void);
 ~CHTGDIManager(void);
/****************************************************************************
| 函數(shù)功能:從文件中獲取位圖                        |
| 輸入?yún)?shù):                                |
| szPicPath: 圖片文件路徑                          |
| pRect: 取圖片的一部分 NULL表示取整個(gè)圖片                 |
| 輸出參數(shù):無(wú)                               |
| 返回值: 成功返回位圖句柄 失敗返回NULL                 |
| 說(shuō)  明:此類(lèi)析構(gòu)時(shí)會(huì)刪除此位圖,使用者不用刪除             |
****************************************************************************/
HBITMAP GetBitmap(TCHAR* szPicPath, RECT* pRect = NULL);
/****************************************************************************
| 函數(shù)功能:從資源中獲取位圖                        |
| 輸入?yún)?shù):                                |
| iPicId: 資源ID                              |
| pRect: 取圖片的一部分 NULL表示取整個(gè)圖片                 |
| 輸出參數(shù):無(wú)                               |
| 返回值: 成功返回位圖句柄 失敗返回NULL                 |
| 說(shuō)  明:此類(lèi)析構(gòu)時(shí)會(huì)刪除此位圖,使用者不用刪除             |
****************************************************************************/
HBITMAP GetBitmap(int iPicId, RECT* pRect = NULL);
/****************************************************************************
| 函數(shù)功能:獲取指定的字體                         |
| 輸入?yún)?shù):                                |
| lHeight:字號(hào)                               |
| lWeight: 粗度                               |
| szFaceName: 字體名稱(chēng)                           |
| bUnderline: 是否帶底橫線(xiàn)                         |
| bItalic: 是否斜體                            |
| 輸出參數(shù):無(wú)                               |
| 返回值: 成功返回字體句柄 失敗返回NULL                 |
| 說(shuō)  明:此類(lèi)析構(gòu)時(shí)會(huì)刪除此字體,使用者不用刪除             |
****************************************************************************/
HFONT GetFont(long lHeight, long lWeight, TCHAR* szFaceName, BOOL bUnderline = FALSE, BOOL bItalic = FALSE);
 void DeleteBitmap(HBITMAP hBitmap);
 void DeleteAllBitmap(HBITMAP hBitmap);
 void DeleteFont(HFONT hFont);
 void DeleteAllFont(HFONT hFont);
private:
 HBITMAP* m_hBitmap;
 HFONT* m_hFont;
 int m_iBitmapIndex;
 int m_iFontIndex;
 int m_iBitmapCount;
 int m_iFontCount;
};
#endif //!__CHTGDIMANAGER_H__

MFC提供了各種GDI對(duì)象的封裝類(lèi),許多習(xí)慣WIN32 API 開(kāi)發(fā)的(SDK開(kāi)發(fā))可能并不喜歡使用這些類(lèi)(反正我是不喜歡用,個(gè)人認(rèn)為這些類(lèi)封裝的并不怎么好),而是習(xí)慣使用API直接創(chuàng)建,況且許多情況下需要直接使用這些GDI對(duì)象的句柄。GDI對(duì)象的撤銷(xiāo),GDI對(duì)象使用完成后是要撤銷(xiāo)的,以防資源泄漏。CHTGDIManager在類(lèi)析構(gòu)時(shí)撤銷(xiāo)了它所創(chuàng)建的所有GDI對(duì)象,使用者不需要撤銷(xiāo)。

相關(guān)文章

  • C++ Easylogging++日志庫(kù)配置使用超詳細(xì)講解

    C++ Easylogging++日志庫(kù)配置使用超詳細(xì)講解

    這篇文章主要介紹了C++ Easylogging++日志庫(kù)配置使用,Easylogging++是用于C++應(yīng)用程序的單頭高效日志庫(kù)。它非常強(qiáng)大,高度可擴(kuò)展并且可以根據(jù)用戶(hù)的要求進(jìn)行配置
    2022-11-11
  • C語(yǔ)言實(shí)現(xiàn)簡(jiǎn)單電子通訊錄(2)

    C語(yǔ)言實(shí)現(xiàn)簡(jiǎn)單電子通訊錄(2)

    這篇文章主要為大家詳細(xì)介紹了C語(yǔ)言實(shí)現(xiàn)簡(jiǎn)單電子通訊錄的第二部分,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-06-06
  • C++實(shí)現(xiàn)逆波蘭式

    C++實(shí)現(xiàn)逆波蘭式

    這篇文章主要為大家詳細(xì)介紹了C++實(shí)現(xiàn)逆波蘭式,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-11-11
  • C++ 網(wǎng)絡(luò)連通性檢測(cè)的實(shí)現(xiàn)方法

    C++ 網(wǎng)絡(luò)連通性檢測(cè)的實(shí)現(xiàn)方法

    這篇文章主要介紹了C++ 網(wǎng)絡(luò)連通性檢測(cè)的實(shí)現(xiàn)方法的相關(guān)資料,這里提供實(shí)例幫助大家實(shí)現(xiàn)這樣的功能,需要的朋友可以參考下
    2017-09-09
  • C++中vector可以作為map的鍵值實(shí)例代碼

    C++中vector可以作為map的鍵值實(shí)例代碼

    這篇文章主要介紹了C++中vector可以作為map的鍵值實(shí)例代碼,需要的朋友可以參考下
    2017-07-07
  • c語(yǔ)言:基于函數(shù)指針的兩個(gè)示例分析

    c語(yǔ)言:基于函數(shù)指針的兩個(gè)示例分析

    本篇文章是對(duì)c語(yǔ)言中函數(shù)指針的兩個(gè)示例做了詳細(xì)的分析介紹,需要的朋友參考下
    2013-05-05
  • C++的程序流程結(jié)構(gòu)你了解多少

    C++的程序流程結(jié)構(gòu)你了解多少

    這篇文章主要為大家詳細(xì)介紹了C++的程序流程結(jié)構(gòu),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來(lái)幫助
    2022-02-02
  • C++?Boost?Spirit進(jìn)階教程

    C++?Boost?Spirit進(jìn)階教程

    Boost是為C++語(yǔ)言標(biāo)準(zhǔn)庫(kù)提供擴(kuò)展的一些C++程序庫(kù)的總稱(chēng)。Boost庫(kù)是一個(gè)可移植、提供源代碼的C++庫(kù),作為標(biāo)準(zhǔn)庫(kù)的后備,是C++標(biāo)準(zhǔn)化進(jìn)程的開(kāi)發(fā)引擎之一,是為C++語(yǔ)言標(biāo)準(zhǔn)庫(kù)提供擴(kuò)展的一些C++程序庫(kù)的總稱(chēng)
    2022-11-11
  • PyQt5利用Qt Designer實(shí)現(xiàn)簡(jiǎn)單界面交互

    PyQt5利用Qt Designer實(shí)現(xiàn)簡(jiǎn)單界面交互

    本文主要介紹了PyQt5利用Qt Designer實(shí)現(xiàn)簡(jiǎn)單界面交互,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2025-03-03
  • C++ 字符串的反轉(zhuǎn)五種方法實(shí)例

    C++ 字符串的反轉(zhuǎn)五種方法實(shí)例

    通過(guò)不同的方法,實(shí)現(xiàn)對(duì)所輸入字符串的反轉(zhuǎn),有需要的朋友可以參考一下
    2013-09-09

最新評(píng)論

通渭县| 四川省| 横山县| 翼城县| 呼玛县| 抚顺县| 巴林右旗| 宁河县| 陕西省| 乃东县| 科技| 湛江市| 徐汇区| 塔城市| 苍梧县| 绥芬河市| 页游| 平利县| 栾川县| 额尔古纳市| 河津市| 黄陵县| 攀枝花市| 西畴县| 天峻县| 西林县| 南溪县| 太谷县| 射洪县| 合阳县| 敦化市| 巴南区| 上蔡县| 清涧县| 阜新市| 招远市| 聂拉木县| 绍兴市| 梁河县| 宁津县| 安国市|