Win32開發入門(16):ListView的多個視圖

來源:互聯網
上載者:User

在上一個例子中,我們只用到了ListView的Report視圖,也就是詳細視圖。本文我們再把上一篇文 章中所用的例子進行一下擴充,例子源碼可以到俺的資源區下載。

我們為ListView中顯示的數 據加上表徵圖,並且允許使用者選擇顯示哪種視圖,如大表徵圖,小表徵圖,詳細資料等。

因為代碼還 比較長,我也不希望把代碼全部放出來,在寫完本文後,我會將源碼上傳到資源中。當然了,我也不可 能說每一行代碼都解釋一遍,那也不現實,而且,這樣也不好,我不能主觀地去懷疑讀者的領悟能力。

一、準備表徵圖

既然要用到表徵圖,為了簡單方便,就用VS的資源編輯器隨便畫幾下就有圖 標了,我們要準備兩個表徵圖,為什麼呢?第一個表徵圖是給EXE檔案用的,而第二個表徵圖是用在ListView 中的。因為在產生的.exe檔案的表徵圖是選用我們最先添加到資源中的表徵圖,為了使.EXE檔案的表徵圖和我 們在ListView中用的表徵圖不要一樣(這樣不好看),所以我們還是準備兩個表徵圖好一點。

表徵圖 中具備兩個尺寸就夠了——16*16和32*32,如果可能盡量用24位元影像,這樣你能用更多的顏色。

二、如何切換視圖

改變ListView的視圖,可以使用ListView_SetView宏,發送LVM_SETVIEW訊息 也可以,不過使用宏更方便。它的第一個參數指定LV控制項的控制代碼,第二個參數是設定用哪個視圖。

LV_VIEW_DETAILS——詳細視圖。

LV_VIEW_ICON——大表徵圖列表。

LV_VIEW_LIST ——列表視圖。

LV_VIEW_SMALLICON——小表徵圖。

LV_VIEW_TILE——平鋪,如果我沒記 錯的話,這個視圖是在XP時引入的。

三、ComboBox控制項使用

為了可以讓使用者選擇一個視 圖,自然要提供對應的操作介面,這是一種多選一的方式,用選項按鈕和下拉拉表框都可以,不過,單 選按鈕要佔用更多地方而且處理的訊息更多,相對麻煩,所以,還是ComboBox好一些。

用 ComboBox_AddString宏就可以向ComboBox中添加項,比如本例。

// 初始化ComboBox,以選擇視圖     hcbb = GetDlgItem(hDlg, IDC_CBVIEW);     ComboBox_AddString(hcbb, L"大表徵圖");     ComboBox_AddString(hcbb, L"小表徵圖");     ComboBox_AddString(hcbb, L"列表");     ComboBox_AddString(hcbb, L"詳細");

相關文章

E-Commerce Solutions

Leverage the same tools powering the Alibaba Ecosystem

Learn more >

Apsara Conference 2019

The Rise of Data Intelligence, September 25th - 27th, Hangzhou, China

Learn more >

Alibaba Cloud Free Trial

Learn and experience the power of Alibaba Cloud with a free trial worth $300-1200 USD

Learn more >

聯繫我們

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

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