共用方式為


HDITEMA 結構 (commctrl.h)

包含標頭控件中專案的相關信息。 這個結構會取代 HD_ITEM 結構。

語法

typedef struct _HD_ITEMA {
  UINT    mask;
  int     cxy;
  LPSTR   pszText;
  HBITMAP hbm;
  int     cchTextMax;
  int     fmt;
  LPARAM  lParam;
  int     iImage;
  int     iOrder;
  UINT    type;
  void    *pvFilter;
  UINT    state;
} HDITEMA, *LPHDITEMA;

成員

mask

類型:UINT

旗標,指出哪些其他結構成員包含有效的數據,或必須填入。 這個成員可以是下列值的組合:

價值 意義
HDI_BITMAP
hbm 成員有效。
HDI_DI_SETITEM
處理訊息 HDM_GETITEM時,標頭控件可能沒有完成要求所需的所有值。 在此情況下,控件必須透過 HDN_GETDISPINFO 通知將值呼叫回應用程式。 如果HDI_DI_SETITEM已傳入 HDM_GETITEM 訊息中,控件會快取從HDN_GETDISPINFO傳回的任何值(否則值仍然未設定。
HDI_FORMAT
fmt 成員有效。
HDI_FILTER
類型pvFilter 成員有效。 這可用來篩選出 類型 成員中指定的值。
HDI_HEIGHT
與HDI_WIDTH相同。
HDI_IMAGE
iImage 成員有效,並指定要與專案一起顯示的影像。
HDI_LPARAM
lParam 成員有效。
HDI_ORDER
iOrder 成員有效,並指定專案的順序值。
HDI_STATE

6.00 版和更新版本狀態 成員有效。

HDI_TEXT
pszTextcchTextMax 成員有效。
HDI_WIDTH
cxy 成員有效,並指定項目的寬度。

cxy

類型:int

項目的寬度或高度。

pszText

類型:LPTSTR

專案字串的指標。 如果要從控件擷取文字,則必須初始化這個成員以指向字元緩衝區。 如果這個成員設定為LPSTR_TEXTCALLBACK,控件會傳送 HDN_GETDISPINFO 通知碼來要求這個專案的文字資訊。 請注意,雖然標頭控件允許任何長度的字串儲存為專案文字,但只會顯示前 260 TCHARs

hbm

類型:HBITMAP

項目點陣圖的句柄。

cchTextMax

類型:int

專案字串的長度,TCHARs。 如果要從控件擷取文字,這個成員必須包含 pszText所指定位址的 TCHAR 數目。

fmt

類型:int

指定專案格式的旗標。

價值 意義
文字理由:
設定下列其中一個旗標以指定文字理由:
HDF_CENTER
項目的內容會置中。
HDF_LEFT
項目的內容會靠左對齊。
HDF_RIGHT
項目的內容靠右對齊。
顯示:
設定下列其中一個旗標來控制顯示:
HDF_BITMAP
項目會顯示點陣圖。
HDF_BITMAP_ON_RIGHT
點陣圖會出現在文字右側。
HDF_OWNERDRAW
標頭控件的擁有者會繪製專案。
HDF_STRING
項目會顯示字串。
合併旗標:
上述值可以與下列項目結合:
HDF_IMAGE
顯示影像清單中的影像。 傳送 HDM_SETIMAGELIST 訊息來指定影像清單。 指定此結構的 iImage 成員中的影像索引。
HDF_JUSTIFYMASK
隔離對應至上表所列三個理由旗標的位。
HDF_RTLREADING
一般而言,視窗會顯示由左至右的文字(LTR)。 Windows 可以 鏡像 來顯示語言,例如希伯來文或從右至左讀取的阿拉伯文(RTL)。 標頭文字通常會以與其父視窗中的文字相同的方向讀取。 如果設定HDF_RTLREADING,標頭文字會從父視窗中的文字相反方向讀取。
HDF_SORTDOWN

6.00 版和更新版本。 在此專案上繪製向下箭號。 這通常用來指出目前視窗中的資訊會以遞減順序排序在這個數據行上。 此旗標無法與HDF_IMAGE或HDF_BITMAP結合。

HDF_SORTUP

6.00 版和更新版本。 在此專案上繪製向上箭號。 這通常用來指出目前視窗中的資訊會以遞增順序排序在這個數據行上。 此旗標無法與HDF_IMAGE或HDF_BITMAP結合。

HDF_CHECKBOX

6.00 版和更新版本。 項目會顯示複選框。 只有在標頭控件上第一次設定 HDS_CHECKBOXES 樣式時,旗標才有效。

HDF_CHECKED

6.00 版和更新版本。 項目會顯示核取的複選框。 只有在同時設定HDF_CHECKBOX時,旗標才有效。

HDF_FIXEDWIDTH

6.00 版和更新版本。 用戶動作無法修改項目的寬度來調整它的大小。

HDF_SPLITBUTTON

6.00 版和更新版本。 項目會顯示分割按鈕。 按兩下分割按鈕時,會傳送HDN_DROPDOWN通知。

lParam

類型:LPARAM

應用程式定義的項目數據。

iImage

類型:int

影像清單中的影像以零起始的索引。 除了 hbm 欄位中指定的任何影像之外,指定的影像也會顯示在標頭專案中。 如果image 設定為 I_IMAGECALLBACK,控件會使用 HDN_GETDISPINFO 通知碼來要求這個專案的文字資訊。 若要清除影像,請將此值設定為 I_IMAGENONE。

iOrder

類型:int

項目出現在標頭控件中的順序,從左至右。 也就是說,最左邊專案的值是0。 右邊下一個專案的值是1,依故。

type

類型:UINT

pvFilter所指定的篩選類型。 可能的型別包括:

價值 意義
HDFT_ISSTRING
字串數據。
HDFT_ISNUMBER
數值數據。
HDFT_HASNOVALUE
忽略 pvFilter
HDFT_ISDATE

6.00 版和更新版本。 日期數據。 pvFilter 成員是 SYSTEMTIME 結構 指標。

pvFilter

類型:void*

應用程式定義資料項的位址。 數據篩選類型取決於設定成員的旗標值。 使用 HDFT_ISSTRING 旗標來表示字串,HDFT_ISNUMBER表示整數。 使用 HDFT_ISSTRING 旗標時,pvFilter 是 HDTEXTFILTER 結構的 指標。

state

類型:UINT

狀態。 這個成員唯一有效的支援值如下:

價值 意義
HDIS_FOCUSED
專案具有鍵盤焦點。

言論

注意 Comctl32.dll 第 6 版不可轉散發,但它包含在 Windows 中。 若要使用第 6 版 Comctl32.dll,請在指令清單中指定它。 如需指令清單的詳細資訊,請參閱 啟用可視化樣式
 

注意

commctrl.h 標頭會將 HDITEM 定義為別名,根據 UNICODE 預處理器常數的定義,自動選取此函式的 ANSI 或 Unicode 版本。 混合使用編碼中性別名與非編碼中性的程序代碼,可能會導致編譯或運行時間錯誤不符。 如需詳細資訊,請參閱函式原型的 慣例。

要求

要求 價值
最低支援的用戶端 Windows Vista [僅限傳統型應用程式]
支援的最低伺服器 Windows Server 2003 [僅限傳統型應用程式]
標頭 commctrl.h