1.chyperlink
擴充套件了static text控制項
url超連結
2.cchecklistviewctrlimpl
乙個以checkbox為元素的listview控制項
3.cwaitcursor && ccustomwaitcursor
建構函式中載入等待的圖示,析構函式中還原,省去了手動還原的步驟,ccustomwaitcursor繼承cwaitcursor,允許採用自定義的圖示
4.csortlistviewctrl
提供sortitems方法對列進行排序
5.關於ownerdraw和customdraw
ownerdraw將會重繪控制項整體ui呈現,customdraw只不過更改控制項其中的乙個屬性而已.
好比wpf重寫render方法就是ownerdraw,更改乙個屬性則是customdraw
6.cbitmapbutton
在乙個點陣圖中載入多個按鈕資源狀態,比normal,pushed,hover,disable
cimagelist iml;7.rebariml.createfromimage ( idb_alyson_imglist, 81, 1, clr_none, image_bitmap,
lr_createdibsection );
m_wndbmpbtn.subclasswindow ( getdlgitem(idc_alyson_bmpbtn) );
m_wndbmpbtn.settooltiptext ( _t("alyson") );
m_wndbmpbtn.setimagelist ( iml );
m_wndbmpbtn.setimages ( 0, 1, 2, 3 );
rebar:可以說的*******的加強版,可以更改布局
使用方法
// create command bar window(1)使用rebar之前必須先呼叫create******rebar方法,然後再呼叫add******rebarband方法hwnd hwndcmdbar = m_cmdbar.create(m_hwnd, rcdefault, null, atl_******_cmdbar_pane_style);
// attach menu
m_cmdbar.attachmenu(getmenu());
// load command bar images
m_cmdbar.loadimages(idr_mainframe);
// remove old menu
setmenu(null);
hwnd hwnd******* = create*************ctrl(m_hwnd, idr_mainframe, false, atl_******_*******_pane_style);
create******rebar(atl_******_rebar_noborder_style);
add******rebarband(hwndcmdbar);
add******rebarband(hwnd*******, null, true);
create******statusbar();
m_hwndclient = m_view.create(m_hwnd, rcdefault, null, ws_child | ws_visible | ws_clipsiblings | ws_clipchildren, ws_ex_clientedge);
uiadd*******(hwnd*******);
uisetcheck(id_view_*******, 1);
uisetcheck(id_view_status_bar, 1);
hwnd hwnd******* = create*************ctrl(m_hwnd, idr_mainframe, false, atl_******_*******_pane_style);(2)對menu新增rebar功能,先將menu新增到ccommandbarctrl裡面,然後呼叫add******rebarband方法create******rebar(atl_******_rebar_noborder_style);
add******rebarband(hwnd*******, null, true);
// create command bar window8.gdi雙緩衝機制hwndhwndcmdbar= m_cmdbar.create(m_hwnd, rcdefault, null, atl_******_cmdbar_pane_style);
// attach menu
m_cmdbar.attachmenu(getmenu());
// load command bar images
m_cmdbar.loadimages(idr_mainframe);
// remove old menu
setmenu(null);
wtl提供了cdoublebufferimpl雙緩衝實現,及預設的cdoublebufferwindowimpl,原理是利用cmemorydc建立了乙個bitmap,繼承cdoublebufferimpl的類只需要重寫dopaint方法即可
cmemorydc的實現
class參考:cmemorydc : public
cdc ~cmemorydc()
};
WTL 學習筆記 幾則技巧
wtl 學習筆記 幾則技巧 l 在wtl專案中插入atl控制項。有點不明白,wtl本身就是擴充套件atl,但wtl嚮導產生的工程,竟不能使用atl控制項。還得手工加一些東西來欺騙vs6,vs6才讓插入atl控制項。1.在工程增加乙個atl.idl檔案,並排除在編譯之外。library atl 2.在...
MyBatis加強學習筆記
通過定義resultmap來實現結果集自動封裝到指定物件並返回結果的一種對映方式 resultmap 節點 result 普通列,association 用於一對一關係對映,collection 用於一對多關係對映,也稱為懶載入,在查詢時先載入主資訊,在需要時才查詢從資訊。實現懶載入有以下三點需要注...
WTL學習筆記 5 系統面板管理
概念 每個控制項都有part和state的概念,這個同在wpf和silverlight的visual state的概念是相同的。只不過silverlight可以手寫xaml,而傳統win32只能函式獲採樣式 如checkbox的狀態,作業系統其實定義了多個狀態的,根據狀態不同進行切換而已 每個控制項...