次の方法で共有


ヘッダー コントロールでのイメージ リストの使い方

更新 : 2007 年 11 月

ヘッダー項目内には、イメージを表示できます。関連イメージ リストに格納されたこのイメージは 16 x 16 ピクセルで、リスト ビュー コントロールで使用するアイコン イメージと同じ特性を持っています。この動作を正常に実装するには、最初にイメージ リストを作成および初期化し、リストをヘッダー コントロールに関連付けて、イメージを表示するヘッダー項目の属性を変更します。

ヘッダー コントロールに対するポインタ (m_pHdrCtrl) とイメージ リストに対するポインタ (m_pHdrImages) を使用した詳細な手順を次に示します。

ヘッダー項目にイメージを表示するには

  1. CImageList コンストラクタを使用して、生成されたポインタを格納し、新しいイメージ リストを構築します。または、既存のイメージ リスト オブジェクトを使用します。

  2. CImageList::Create を呼び出して、新しいイメージ リスト オブジェクトを初期化します。この呼び出しのコード例を次に示します。

    m_ListImageList.Create(16, 16, ILC_COLOR, 2, 2);
    
  3. 各ヘッダー項目のイメージを追加します。次に、2 種類の定義済みイメージを追加するコードを示します。

    m_ListImageList.Add(AfxGetApp()->LoadIcon(IDI_ICON1));
    m_ListImageList.Add(AfxGetApp()->LoadIcon(IDI_ICON2));
    
  4. CHeaderCtrl::SetImageList を呼び出して、イメージ リストをヘッダー コントロールに関連付けます。

  5. 関連するイメージ リストのイメージを表示するように、ヘッダー項目を変更します。次の例では、m_phdrImages の最初のイメージをヘッダー項目 m_pHdrCtrl の先頭項目に割り当てます。

    HDITEM curItem = {0};
    
    pHeaderCtrl->SetImageList(&m_ListImageList);
    
    curItem.mask = HDI_TEXT | HDI_FORMAT | HDI_WIDTH | HDI_IMAGE;
    curItem.pszText = _T("Column 1");
    curItem.cxy = 100;
    curItem.iImage = 0;
    curItem.fmt = HDF_LEFT | HDF_STRING | HDF_IMAGE;
    pHeaderCtrl->InsertItem(0, &curItem);
    

使用されるパラメータ値の詳細については、対応する「CHeaderCtrl」を参照してください。

t5d6ea9c.alert_note(ja-jp,VS.90).gifメモ :

複数のコントロールで同じイメージ リストを使用できます。たとえば、標準のリスト ビュー コントロールで、小さいアイコン ビューとヘッダー項目の両方に 16 x 16 ピクセルのイメージを使用する場合は、同じイメージ リストを使用できます。

参照

参照

CHeaderCtrl の使い方