程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> C++入門知識 >> CListCtrl,clistctrl獲取選中行

CListCtrl,clistctrl獲取選中行

編輯:C++入門知識

CListCtrl,clistctrl獲取選中行


CListCtrl

CCmdTarget     └CListCtrl


CListCtrl類封裝“列表視圖控件”功能,顯示每個包含圖標(列表視圖中)和標簽的收集。除圖標和標簽外,每一項還能有顯示在圖標和標簽的右邊的列中的信息。

視圖

列表視圖控件可用四種不同方式顯示其內容,稱為“視圖”。

. 圖標視圖
每一項以全尺寸圖標(32×32像素)出現,下面有一個標簽。用戶可在列表視圖窗口拖動項到任意位置。 · 小圖標
視圖每一項以小圖標(16×16像素)出現,右邊有一個標簽。用戶可在列表視圖窗口拖動項到任意位置。 · 列表視圖
每一項以小圖標出現,下面有一個標簽。項按列排列,不能拖動到列表視圖窗口的任何位置。 · 報表視圖
每一項在本行上出現,右邊有排列成列的附加信息。最左邊的列包含小圖標和標簽,下一列包含應用指定的子項。嵌入標題控件實現這些列。


擴展風格

除了標准列表風格,類CListCtrl支持一系列提供豐富功能的擴展風格。此功能的一些示例包括:

· 逗留選擇
有效時,若光標保持在某項上一段時間,則允許自動選擇該項。 · 虛列表視圖
如果有效,允許控件支持DWORD項。通過把管理應用項數據放在最頂上而成為可能。除了項選擇和焦點信息,所有項信息必須由應用管理。 · 單擊或雙擊激活
如果有效,允許熱跟蹤(項文本自動高亮顯示)和高亮顯示項的單擊和雙擊激活。 · 拖放列表命令
如果有效,允許拖放列表視圖控件中列的記錄。只對報表視圖有效。


項和子項

列表視圖控件中的每一項含有一個圖標、一個標簽、一個當前狀態和應用定義值(稱為“項數據”)。一個或更多子項還可與每一項聯系。一個“子項”是一個字符串,在報表視圖中可顯示在項圖標和標簽右邊的列裡。列表視圖控件中的每一項都必須與子項數目相同。
類CListCtrl提供一些函數來插入、刪除、查找和更改這些項。

請參閱CListCtrl::GetItem,CListCtrl::InsertItem和CListCtrl::FindItem。
缺省時,列表視圖控件負責存儲一個項的圖標和文本屬性。然而,除了這些項類型外,類CListCtrl支持“回調項”。一個“回調項”是一個列表視圖項,每個應用棗而不是控件棗存儲文本,圖標或兩者。回調掩碼用於指定哪個項的屬性(文本和/或圖標)由應用提供。

如果應用使用回調項,它必須可以提供按需要提供文本和/或圖標屬性。回調項在你的應用已有部分這種信息時很有幫助。要了解更多信息,請參閱CListCtrl::GetCallBackMask和“使用CListCtrl:回調項和回調掩碼”。

圖象列表

圖標、標題項圖象和應用定義的列表視圖項狀態包含在一些圖象列表中(由類CImageList實現),可創建和指派到列表視圖控件中。每個列表視圖控件可有四個以上的圖象列表類型:

· 大圖標
在圖標視圖中使用,得到全尺寸圖標。 · 小圖標
用於小圖標、列表和報表視圖中,得到圖標視圖中使用的小版本的圖標。 · 應用定義的狀態
包含狀態圖象,在項圖標旁顯示以指示一個應用定義狀態。 · 標題項
用於在報表視圖中,得到出現在每個標題控件項中的小圖象。

缺省時,列表視圖控件刪除指派給它的圖象列表(當它刪除時);然而,開發者可通過刪除由應用定義的不再使用的圖象列表。要了解更多信息,請參閱聯機文檔“Visual C++程序員指南”中的“使用CListCtrl:列表項和圖象列表”。
#include <afxcmn.h>

請參閱:CImageList


CListCtrl類的成員
構造函數

ClistCtrl 構造一個CListCtrl對象 Create 創建列表控件並將其附加給CListCtrl對象


屬性

GetBkColor 獲取列表視圖控件的背景色 SetBkColor 設置列表視圖控件的背景色 GetImageList 獲取用於繪制列表視圖項的圖象列表的句柄 SetImageList 指定一個圖象列表到列表視圖控件 GetItemCount 獲取列表視圖控件中的項的數量 GetItem 獲取列表視圖項的屬性 GetCallbackMask 獲取列表視圖控件的回調掩碼 SetCallbackMask 設置列表視圖控件的回調掩碼 GetNextItem 查找指定特性和指定指定項關系的列表視圖項 GetFirstSeletedItemPosition 在列表視圖控件中獲取第一個選擇的列表視圖項的位置 GetNextSeletedItem 為重復而獲取下一個選擇的列表視圖 GetItemRect 獲取項的有界矩形 SetItemPosition 在列表視圖控件中移動一項到指定位置 GetItemPosition 獲取列表視圖項的位置 GetStringWidth 指定需要顯示所有指定字符串的最小列寬 GetEditControl 獲取用於編輯一個項文本的編輯控件的句柄 GetColumn 獲取控件的列的屬性 SetColumn 設置列表視圖列的屬性 GetColumnWidth 獲取報表視圖或列表視圖中的列的寬度 SetColumnWidth 改變報表視圖或列表視圖中的列的寬度 GetCheck 獲取與某項相關的狀態圖象的當前顯示狀態 SetCheck 設置與某項相關的狀態圖象的當前顯示狀態 GetViewRect 獲取列表視圖控件中所有項的有界矩形 GetTextColor 獲取列表視圖控件的文本顏色 SetTextColor 設置列表視圖控件的文本顏色 GetTextBkColor 獲取列表視圖控件的文本背景色 SetTextBkColor 設置列表視圖控件的文本背景色 GetTopIndex 獲取最高級項的索引 GetCountPerPage 計算可正好垂直放入列表視圖控件中的項的數目 GetOrigin 獲取列表視圖控件的最初的當前視圖 SetItemState 改變列表視圖控件的項的狀態 GetItemState 獲取列表視圖控件的項的狀態 GetItemText 獲取列表視圖項或子項的文本 SetItemText 設置列表視圖項或子項的文本 SetItemCount 准備一個列表視圖控件以添加大量的項 GetItemData 獲取與某項相關的應用所指定的值 SetItemData 設置項的應用指定的值 GetSelectedCount 獲取列表視圖控件中選擇項的數量 SetColumnOrderArray 設置列表視圖控件的列序(左或右) GetColumnOrderArray 獲取列表視圖控件的列序(左或右) SetIconSpacing 設置列表視圖控件中的圖標的距離 GetHeaderCtrl 獲取列表視圖控件的標題控件 GetHotCursor 獲取在熱調試對列表視圖控件有效時使用的游標 SetHotCursor 設置在熱調試對列表視圖控件有效時使用的游標 GetSubItemRect 獲取列表視圖控件中某項的有界矩形 GetHotItem 獲取當前在游標下的列表視圖項 SetHotItem 設置列表視圖控件的當前熱項 GetSelectionMark 獲取列表視圖控件的選擇屏蔽 SetSelectionMark 設置列表視圖控件的選擇屏蔽 GetExtendedStyle 獲取列表視圖控件的當前擴展風格 SetExtendedStyle 設置列表視圖控件的當前擴展風格 SubItemHitTest 指定哪個列表視圖項在指定位置,若存在 GetWorkAreas 獲取列表視圖控件的當前工作區 GetNumberOfWorkAreas 獲取列表視圖控件的當前工作區數量 SetItemCountEx 設置虛列表視圖控件的項的數量 SetWorkAreas 設置列表視圖控件中圖標可以顯示的區域 ApproximateViewRect 指定顯示列表視圖控件項所需的寬度和高度 GetBkImage 獲取列表視圖控件的當前背景圖象 SetBkImage 設置列表視圖控件的當前背景圖象 GetHoverTime 獲取列表視圖控件的當前逗留時間 SetHoverTime 設置列表視圖控件的當前逗留時間


操作

InsertItem 在列表視圖控件中插入一個新項 DeleteItem 從控件中刪除一項 DeleteAllItems 從控件中刪除所有項 FindItem 查找具有指定的字符的列表視圖項 SortItems 使用應用定義的比較函數排序列表視圖項 HitTest 指定哪個列表視圖在指定的位置上 EnsureVisible 保證項是可見的 Scroll 滾動列表視圖控件的內容 ReDrawItems 強迫列表視圖控件刷新一些項 Update 強迫控件刷新一個指定的項 Arrange 調整一欄裡的項 EditLabel 開始項文本該處編輯 InsertColumn 插入列表視圖控件中的新列 DeleteColumn 從列表視圖控件中刪除一列 CreateDragImage 為指定的項構造一個拖動圖象列表


可覆蓋的函數

 

DrawItem 當自繪制控件的可視部分改變時被調用 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved