CHTReportList控制項類

來源:互聯網
上載者:User

 

 

HTControl之CHTReportList控制項類

 

作者

李海濤

日期

2012-10-05

 

文檔只是簡要說明,在CHTReportList.h中有各介面和變數的詳細說明。還可以下載HTControlDemo進行調試。

 http://download.csdn.net/detail/htcontrol/5423895感興趣的朋友請關注我的資源清單中最新版本

 

 

 

 

 

一 替換CHTReportList捲軸

         VC提供的CListCtrl已經具有相當豐富的功能,而且效率也很好。此類繼承自CListCtrl。但是如果包含CListCtrl控制項的介面風格與CListCtrl的捲軸很不協調那就糟糕了。此類提供了去掉CListCtrl預設捲軸,替換成自己繪製的捲軸。這樣就不會破壞介面整體表現了。

 

 

二 捲軸的任意尺寸

        
此類替換的捲軸並不需要與預設的捲軸同樣的寬度,可以支援任意的寬度,而且不需要捲軸時候捲軸自動消失,控制項的客戶區佔據此空間,這樣介面的布局不會受到影響。

 

 

三 不受作業系統主題的影響

       不同的作業系統主題,各種介面元素的尺寸是不同的,同樣的主題也可以調整介面元素的尺寸,但是此類是替換掉預設的捲軸。自繪的捲軸支援任意的尺寸,這就決定了不會受作業系統主題的影響。

 

四 支援CListCtrl背景圖顯示

         CListCtrl提供了一個設定背景圖SetBkImage介面,但是這個介面存在一個問題:視窗內容滾動時,背景圖隨之滾動,這樣就失去了背景圖的意義了,搞不懂微軟為什麼這樣設計的(東西方文化差異?其他原因?),CHTReportList類通過重繪可以實現真正意義上的背景圖,不會隨視窗內容滾動。

 

五 CListCtrl框選的重繪

         CListCtrl預設的框選是一個虛線框,而且存在問題,有時候在表單上有殘留。預設的虛線框可能與整體介面風格很不一致。CHTReportList重繪了框選,而且不受作業系統主題的影響。

六 在CListCtrl某列添加進度條

         Flashget, 迅雷,電驢等下載工具的下載列表中下載進度都是繪製的進度條。但是CListCtrl是不支援的。CHTReportList提供在任意列繪製進度條的功能。當然,繪製其它控制項元素也是可以的(目前是繪製的進度條,不可能一個類把所有的都支援了)。

 

七  CListCtrl原有功能全部保留

        
我看過一些其它的CListCtrl的繼承類,很多喪失了一些CListCtrl原有的功能,比如框選只能在空白區開始,CHTReportList是支援在任意位置開始框選的。CHTReportList保留幾乎CListCtrl所有原有的功能。

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.