WTL分割視窗

來源:互聯網
上載者:User
 

WTL提供了3個類用來分隔視窗:CSplitterImpl、CSplitterWindowImpl、CSplitterWindowT。CSplitterImpl類實現了最主要的分割視窗所需要的函數。CSplitterWindowImpl繼承了CSplitterImpl類,它實現了一個什麼都不做的OnEraseBackground函數,還實現了一個OnSize函數,該函數可以自動調整分割視窗的客戶區大小。通常情況下,我們可以直接使用CSplitterWindowImpl類作為我們視窗的父類,如果這兩個函數的行為達不到我們的要求,我們可以改寫繼承自CSplitterImpl類的訊息處理函數。CSplitterWindowT類繼承了CSplitterWindowImpl類,並註冊視窗類別的名稱為—“WTL_SplitterWindow”,還有就是提供了兩個類型定義:typedef CSplitterWindowT<true>    CSplitterWindow;//垂直分割typedef CSplitterWindowT<false>   CHorSplitterWindow;// 水平分割     下面我們使用CSplitterWindow類型來建立垂直分割視窗,然後左邊窗格為TreeView,右邊為普通的View.    在架構視窗中定義三個成員變數:CSplitterWindow m_splitter;CLeftTreeView m_treeView;     CRightView m_rightView;          在架構視窗的OnCreate函數中,添加如下代碼://///////////////////     const DWORD dwSplitStyle = WS_CHILD | WS_VISIBLE | WS_CLIPCHILDREN | WS_CLIPSIBLINGS;     const DWORD dwSplitExStyle = WS_EX_CLIENTEDGE;     m_hWndClient=m_splitter.Create(m_hWnd,rcDefault,NULL,dwSplitStyle,dwSplitExStyle);     // Create a treeview based on m_splitter     m_treeView.Create ( m_splitter, rcDefault );     // Create a view based on m_splitter     m_rightView.Create( m_splitter,rcDefault);      // set the left and right view     m_splitter.SetSplitterPanes(m_treeView,m_rightView);     UpdateLayout();     m_splitter.SetSplitterPos(200);     ////////////////     關於CSplitterWindow的具體函數的用法,建議參考以下兩篇文章:http://www.yegaa.com/search/ShowRss.aspx?id=2092http://dev.yesky.com/SoftChannel/72342371928702976/20050306/1918488_2.shtml         一切是如此的簡單和物件導向。

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.