visual c++提 供 了 功 能 強 大 的 類 庫, 基 本 上 應 用 開 發 的 要 求, 但 對 於 某 些 特 殊 要 求 的 界 面, 如 圖 像 兼 文 字 的 按 紐, 列 表 框 中 插 入 圖 像, 中 國 式 報 表 等 等, 仍 顯 得 力 不 從 心, 因 而 很 有 必 要 創 建 擴 展mfc 類 庫, 以 滿 足 實 際 開 發 的 需 求。xtreme toolkit pro是mfc開發中最全面介面控制項套包,它提供了windows開發所需要的11種主流的visual c++ mfc控制項,包括command bars、controls、chart pro、calendar、docking pane、property grid、report control、shortcut bar、syntax edit、skin framework 和task panel。
---- mfc 支 持 自 繪 制(owner-draw) 概 念, 自 繪 制 的 控 制 類, 通 過 調 用drawitem() 函 數 實 現 控 件 的 繪 制, 由 於 控 件 繪 制, 消 息 檢 測 和 消 息 比 較 代 碼 是 在 控 件 中 實 現 而 不 足 在 擁 有 控 件 的 窗 口 中 實 現, 因 而 叫 自 繪 制。 因 而 通 過 重 載drawitem(lpdrawitemstruct 函 數 來 控 制 控 件 的 外 觀 和 行 為, 實 現 控 制 所 需 要 的 參 數, 都 包 含 在lpdrawitemstruct 結 構 中。
---- lpdrawitemstruct 結 構:
---- 最 重 要 的 參 數 是itemaction,itemstate,hdc,rcitem, 它 們 是 實 現 控 件 外 觀 繪 制, 消 息 響 應 所 必 須 的。
---- itemaction: 繪 制 動 作, 有 以 下 幾 種 取 值:oda_drawentire,oda_focus, oda_select.
---- itemstate: 狀 態, 有 以 下 幾 種 取 值:ods_checked,ods_disabled,ods_focus, ods_grayed,ods_selected,ods_default.
---- hdc: 設 備 環 境 的 句 柄。
---- rcitem: 控 件 外 觀 大 小 的 矩 形。
---- 下 面 給 出 一 個 基 於cbutton 類 的 圖 象button 類:cmybtn
---- 利 用mfc wizard 創 建 一 個 新 類cmybtn, 基 類 是cbutton
mybtn.h:
class cmybtn : public cbutton
;mybtn.cpp
cmybtn::cmybtn()
void cmybtn::drawitem(lpdrawitemstruct lpdis)}}
void cmybtn::setbitmapid(uint id)
---- 利用cmybtn類**可以在應用系統中實現圖象文字按紐,在dialog中加入按紐 (idc_button1),(idc_button2)設定它們的屬性為 owner-draw.
利用resource editor 加入兩個圖象檔案,id值為:idb_bitmap1,idb_bitmap2。
class cws3dlg : public cdialog
;cmybtnm_btn1;
cmybtnm_btn2;
//定義圖象按紐
//}}afx_data
...protected:
virtual void dodataexchange(cdataexchange* pdx);
// ddx/ddv support
//}}afx_virtual
....
//}}afx_msg
declare_message_map()
};void cws3dlg::dodataexchange(cdataexchange* pdx)
}afx_data_map
} 在初始化**加入:
bool cws3dlg::oninitdialog()
---- 本 文 給 出 了 自 繪 制 類 的 實 現 代 碼, 讀 者 可 以 利 用 此 思 路 開 發 出 其 他 擴 展 類 庫, 豐 富 開 發 資 源。
mfc擴充套件類庫
在平時練習的時候我們可以自己手動進行,但是一旦接受一些專案,應用程式開發等,對介面的要求就會高出許多。這時候就有必要借助這些「半成品」實現介面美化提公升效率。這裡簡單介紹一下,具體可點進去檢視每個的詳情以及教程,案例!
bcgcontrolbar
bcgcontrolbar
如何學好Visual C
如何學好 c 是每個學習 c 語言的讀者所關心的問題,筆者結合多年來的學習和工作經驗,總結出以下幾點學習的方法 q 對於初學者來說,基礎是最重要的,因此首先應找一本基礎的 visual c 圖書,認真閱讀,從中學習 c 語言的基礎知識,為以後更進一步學習打下良好基礎。q 在學習過程中,要多練習 勤思...
Visual C 程式設計實用教程
前言 1 目錄一2 目錄二3 第一章 visual c 6.0概述 4 1.1 vc 6.0的新特性 4 1.2 整合環境及基本操作 7 1.3 選單功能介紹 9 1.4 工具欄的使用 17 1.5 文字編輯器的使用 18 1.6 資源與識別符號 23 1.7 本章小結 25 第二章 第乙個vc應用...
Visual C 開發(一) 入門
visual c 是常用的一種 windows 程式設計工具,是微軟日益成熟的視覺化軟體開發平台,可用於編寫c c 和 c cli 程式。概述 visual c 不是簡單的 c 編譯器,而是乙個由編輯器 編譯器 偵錯程式以及程式嚮導 類嚮導 classwizard 等元件整合的乙個視覺化開發環境。特...