Share via


CListCtrl クラス

"リスト ビュー コントロール" の機能がカプセル化されています。このコントロールには、アイテムのコレクションが表示されます。各アイテムは、イメージ リストのアイコンとラベルで構成されます。

class CListCtrl : public CWnd

解説

アイコンとラベルに加えて、各アイテムの説明もアイコンとラベルの右の列に表示されます。 このコントロール (および CListCtrl クラス) は、Windows 95/98 と Windows NT Version 3.51 以降の環境で実行されているプログラムでのみ利用できます。

ここでは、CListCtrl クラスについて概説します。 詳細については、「CListCtrl の使い方」と「コントロール」を参照してください。

ビュー

リスト ビュー コントロールの内容は、次の 4 種類の "ビュー" に表示できます。

  • アイコン ビュー

    各アイテムがフル サイズのアイコン (32 x 32 ピクセル) で表示され、下にラベルが付きます。 ユーザーは、リスト ビュー ウィンドウ内のどこにでもアイテムをドラッグできます。

  • 小さなアイコン ビュー

    各アイテムが小さなアイコン (16 x 16 ピクセル) で表示され、右側にラベルが付きます。 ユーザーは、リスト ビュー ウィンドウ内のどこにでもアイテムをドラッグできます。

  • リスト ビュー

    各アイテムが小さなアイコンとして表示され、右側にラベルが付きます。 アイテムは列状に配置されます。ユーザーは、リスト ビュー ウィンドウ内のアイテムをドラッグできません。

  • レポート ビュー

    各アイテムが各行に表示され、補足情報が右側の列に表示されます。 左端の列に小さなアイコンとラベルが表示されます。2 列目以降には、アプリケーションで指定したサブアイテムが表示されます。 これらの列は、埋め込みヘッダー コントロール (CHeaderCtrl クラス) によって実装されます。 ヘッダー コントロールおよびレポート ビューの列の詳細についてを参照してください「:列の追加 (レポート ビュー) コントロールに

参照

  • 「サポート技術情報」(knowledge Base) の記事 Q250614:[HOWTO]:レポート ビューでの CListCtrl の項目を並べ替える

  • 「サポート技術情報」(knowledge Base) の記事 Q200054:PRB:OnTimer() のリスト コントロールに繰り返し呼び出されません

コントロールの現在のリスト ビュー スタイルによって現在のビューが決まります。 これらのスタイルとその使用方法の詳細についてを参照してください「:リスト コントロール スタイルの変更

拡張スタイル

CListCtrl クラスには、標準リスト スタイルのほか、多数の拡張スタイルがあり、豊富な機能が用意されています。 一部の機能を以下に示します。

  • ホバー選択

    この機能を有効にすると、カーソルを一定時間停止した位置のアイテムが自動的に選択されます。

  • 仮想リスト ビュー

    この機能を有効にすると、コントロールで DWORD で表現できるアイテム数までサポートできます。 アイテム データの管理オーバーヘッドをアプリケーションに任せるからです。 アプリケーションでは、アイテムの選択およびフォーカス情報以外のすべてのアイテム情報を管理する必要があります。 詳細についてを参照してください「:仮想リスト コントロール

  • シングルクリックおよびダブルクリックによる起動

    この機能を有効にすると、ホット トラッキング (アイテム テキストの自動強調表示) が有効になり、強調表示されているアイテムをシングルクリックまたはダブルクリックで起動できるようになります。

  • ドラッグ アンド ドロップによる列の並べ替え

    この機能を有効にすると、リスト ビュー コントロールの列をドラッグ アンド ドロップ操作で並べ替えることができます。 レポート ビュー専用の機能です。

これらの新しい使用について拡張スタイルについてを参照してください「:リスト コントロール スタイルの変更

アイテムとサブアイテム

リスト ビュー コントロールの各アイテムは、イメージ リストのアイコン、ラベル、現在の状態、および "アイテム データ" (アプリケーション定義値) で構成されます。 また、各アイテムにサブアイテムをいくつでも関連付けることができます。 "サブアイテム" は文字列であり、レポート ビューでアイテムのアイコンとラベルの右の列に表示できます。 リスト ビュー コントロールでは、すべてのアイテムのサブアイテム数を統一する必要があります。

CListCtrl クラスには、これらのアイテムの挿入、削除、検索、および変更用の関数があります。 詳細についてを参照してくださいCListCtrl::GetItemCListCtrl::InsertItem、および CListCtrl::FindItem「:コントロールへの項目の追加、および CListCtrl を使用して:スクロール、整列、並べ替え、およびリスト コントロールでの検索

リスト ビュー コントロールは、既定でアイテムのアイコン属性とテキスト属性を格納します。 ただし、CListCtrl クラスは、これらのアイテムのほか、"コールバック アイテム" もサポートします。"コールバック アイテム" は、テキストとアイコンの両方または一方が、コントロールではなく、アプリケーションによって格納されるリスト ビュー アイテムです。 アプリケーションで提供するアイテム属性 (テキストとアイコンの両方または一方) は、コールバック マスクによって指定します。 コールバック アイテムを使用するアプリケーションは、要求に応じて、テキストとアイコンの両方または一方の属性を提供する必要があります。 この情報を一部保持しているアプリケーションでは、コールバック アイテムは便利です。 詳細についてを参照してください「:コールバック項目とコールバック マスク

イメージ リスト

リスト ビュー アイテムのアイコン、ヘッダー アイテム イメージ、およびアプリケーション定義の状態は複数のイメージ リストに保持されます。イメージ リストは CImageList クラスによって実装し、リスト ビュー コントロールに割り当てます。 各リスト ビュー コントロールに、以下の 4 種類のイメージ リストを割り当てることができます。

  • 大きなアイコン

    アイコン ビューでフル サイズのアイコンに使用されます。

  • 小さなアイコン

    小さなアイコン ビュー、リスト ビュー、およびレポート ビューで小さなアイコンに使用されます。

  • アプリケーション定義の状態

    アイテムのアイコンの隣に表示され、アプリケーション定義の状態を状態イメージによって表します。

  • ヘッダー アイテム

    レポート ビューで、各ヘッダー コントロール アイテムに小さなイメージとして表されます。

既定では、リスト ビュー コントロールを破棄すると、このコントロールに割り当てられているイメージ リストが破棄されます。ただし、この動作をカスタマイズして、アプリケーションで不要になったイメージ リストを破棄することもできます。 詳細についてを参照してください「:リスト項目とイメージ リスト

必要条件

**ヘッダー:**afxcmn.h

参照

処理手順

ROWLIST サンプル:リスト ビューでフル行の選択を示します

参照

CWnd クラス

階層図

CImageList クラス

その他の技術情報

CListCtrl のメンバー