Mfc-list-control
MFC-リストコントロール
リストビューコントロールの機能をカプセル化します。リストビューコントロールは、アイコン(イメージリストから)とラベルで構成されるアイテムのコレクションを表示します。 CListCtrl クラスで表されます。 リストコントロールは、4つのビューのいずれかを使用してアイテムのリストを表示することで構成されます。
- アイコン
- 小さなアイコン
- List *報告書
__* CListCtrl *クラスのメソッドのリストです。
Sr.No. | Name & Description |
---|---|
1 |
ApproximateViewRect リストビューコントロールの項目を表示するために必要な幅と高さを決定します。 |
2 |
Arrange グリッド上のアイテムを整列します。 |
3 |
CancelEditLabel アイテムテキストの編集操作をキャンセルします。 |
4 |
Create リストコントロールを作成し、それをCListCtrlオブジェクトに関連付けます。 |
5 |
CreateDragImage 指定されたアイテムのドラッグ画像リストを作成します。 |
6 |
CreateEx 指定されたWindows拡張スタイルでリストコントロールを作成し、それをCListCtrlオブジェクトに関連付けます。 |
7 |
DeleteAllItems コントロールからすべてのアイテムを削除します。 |
8 |
DeleteColumn リストビューコントロールから列を削除します。 |
9 |
DeleteItem コントロールからアイテムを削除します。 |
10 |
DrawItem オーナー描画コントロールの視覚的側面が変更されたときに呼び出されます。 |
11 |
EditLabel アイテムのテキストのインプレース編集を開始します。 |
12 |
EnableGroupView リストビューコントロールのアイテムがグループとして表示されるかどうかを有効または無効にします。 |
13 |
EnsureVisible アイテムが表示されるようにします。 |
14 |
FindItem 指定された特性を持つリストビューアイテムを検索します。 |
15 |
GetBkColor リストビューコントロールの背景色を取得します。 |
16 |
GetBkImage リストビューコントロールの現在の背景画像を取得します。 |
17 |
GetCheck アイテムに関連付けられた状態イメージの現在の表示ステータスを取得します。 |
18 |
GetColumn コントロールの列の属性を取得します。 |
19 |
GetColumnOrderArray リストビューコントロールの列の順序(左から右)を取得します。 |
20 |
GetColumnWidth レポートビューまたはリストビューの列の幅を取得します。 |
21 |
GetCountPerPage リストビューコントロールに垂直に収まるアイテムの数を計算します。 |
22 |
GetEditControl アイテムのテキストを編集するために使用される編集コントロールのハンドルを取得します。 |
23 |
GetEmptyText 現在のリストビューコントロールが空の場合に表示する文字列を取得します。 |
24 |
GetExtendedStyle リストビューコントロールの現在の拡張スタイルを取得します。 |
25 |
GetFirstSelectedItemPosition リストビューコントロールで最初に選択されたリストビュー項目の位置を取得します。 |
26 |
GetFocusedGroup 現在のリストビューコントロールでキーボードフォーカスを持つグループを取得します。 |
27 |
GetGroupCount 現在のリストビューコントロール内のグループの数を取得します。 |
28 |
GetGroupInfo リストビューコントロールの指定されたグループの情報を取得します。 |
29 |
GetGroupInfoByIndex 現在のリストビューコントロール内の指定されたグループに関する情報を取得します。 |
30 |
GetGroupMetrics グループのメトリックを取得します。 |
31 |
GetGroupRect 現在のリストビューコントロール内の指定されたグループの外接する四角形を取得します。 |
32 |
GetGroupState 現在のリストビューコントロール内の指定されたグループの状態を取得します。 |
33 |
GetHeaderCtrl リストビューコントロールのヘッダーコントロールを取得します。 |
34 |
GetHotCursor リストビューコントロールでホットトラッキングが有効になっているときに使用されるカーソルを取得します。 |
35 |
GetHotItem 現在カーソルの下にあるリストビュー項目を取得します。 |
36 |
GetHoverTime リストビューコントロールの現在のホバー時間を取得します |
37 |
GetImageList リストビュー項目の描画に使用される画像リストのハンドルを取得します。 |
38 |
GetInsertMark 挿入マークの現在の位置を取得します。 |
39 |
GetInsertMarkColor 挿入マークの現在の色を取得します。 |
40 |
GetInsertMarkRect 挿入ポイントの境界となる長方形を取得します。 |
41 |
GetItem リストビューアイテムの属性を取得します。 |
42 |
GetItemCount リストビューコントロール内のアイテムの数を取得します。 |
43 |
GetItemData アイテムに関連付けられたアプリケーション固有の値を取得します。 |
44 |
GetItemIndexRect 現在のリストビューコントロールのサブアイテムのすべてまたは一部の境界矩形を取得します。 |
45 |
GetItemPosition リストビューアイテムの位置を取得します。 |
46 |
GetItemRect アイテムの境界矩形を取得します。 |
47 |
GetItemSpacing 現在のリストビューコントロールの項目間の間隔を計算します。 |
48 |
GetItemState リストビューアイテムの状態を取得します。 |
49 |
GetItemText リストビューのアイテムまたはサブアイテムのテキストを取得します。 |
50 |
GetNextItem 指定されたプロパティと指定されたアイテムとの指定された関係を持つリストビューアイテムを検索します。 |
51 |
GetNextItemIndex 指定された一連のプロパティを持つ現在のリストビューコントロール内のアイテムのインデックスを取得します。 |
52 |
GetNextSelectedItem リストビューアイテムの位置のインデックス、および反復のために次に選択されたリストビューアイテムの位置を取得します。 |
53 |
GetNumberOfWorkAreas リストビューコントロールの現在の作業領域の数を取得します。 |
54 |
GetOrigin リストビューコントロールの現在のビューの原点を取得します。 |
55 |
GetOutlineColor リストビューコントロールの境界線の色を取得します。 |
56 |
GetSelectedColumn リストコントロールで現在選択されている列のインデックスを取得します。 |
57 |
GetSelectedCount リストビューコントロールで選択されたアイテムの数を取得します。 |
58 |
GetSelectionMark リストビューコントロールの選択マークを取得します。 |
59 |
GetStringWidth 指定されたすべての文字列を表示するために必要な最小列幅を決定します。 |
60 |
GetSubItemRect リストビューコントロール内のアイテムの外接する四角形を取得します。 |
61 |
GetTextBkColor リストビューコントロールのテキストの背景色を取得します。 |
62 |
GetTextColor リストビューコントロールのテキストの色を取得します。 |
63 |
GetTileInfo リストビューコントロール内のタイルに関する情報を取得します。 |
64 |
GetTileViewInfo タイルビューのリストビューコントロールに関する情報を取得します。 |
65 |
GetToolTips リストビューコントロールがツールチップを表示するために使用するツールチップコントロールを取得します。 |
66 |
GetTopIndex 一番上に表示されるアイテムのインデックスを取得します。 |
48 |
GetView リストビューコントロールのビューを取得します。 |
67 |
GetViewRect リストビューコントロール内のすべてのアイテムの外接する四角形を取得します。 |
68 |
GetWorkAreas リストビューコントロールの現在の作業領域を取得します。 |
69 |
HasGroup リストビューコントロールに指定されたグループがあるかどうかを判断します。 |
70 |
HitTest 指定した位置にあるリストビュー項目を決定します。 |
71 |
InsertColumn リストビューコントロールに新しい列を挿入します。 |
72 |
InsertGroup リストビューコントロールにグループを挿入します。 |
73 |
InsertGroupSorted 指定されたグループをグループの順序付きリストに挿入します。 |
74 |
InsertItem リストビューコントロールに新しいアイテムを挿入します。 |
75 |
InsertMarkHitTest 指定したポイントに最も近い挿入ポイントを取得します。 |
76 |
IsGroupViewEnabled リストビューコントロールに対してグループビューを有効にするかどうかを決定します。 |
77 |
IsItemVisible 現在のリストビューコントロール内の指定された項目が表示されるかどうかを示します。 |
78 |
MapIDToIndex 現在のリストビューコントロール内のアイテムの一意のIDをインデックスにマップします。 |
79 |
MapIndexToID 現在のリストビューコントロール内のアイテムのインデックスを一意のIDにマップします。 |
80 |
MoveGroup 指定されたグループを移動します。 |
81 |
MoveItemToGroup 指定したグループを、リストビューコントロールの指定したゼロベースのインデックスに移動します。 |
82 |
RedrawItems リストビューコントロールにアイテムの範囲を強制的に再描画させます。 |
83 |
RemoveAllGroups リストビューコントロールからすべてのグループを削除します。 |
84 |
RemoveGroup 指定したグループをリストビューコントロールから削除します。 |
85 |
Scroll リストビューコントロールのコンテンツをスクロールします。 |
86 |
SetBkColor リストビューコントロールの背景色を設定します。 |
87 |
SetBkImage リストビューコントロールの現在の背景画像を設定します。 |
88 |
SetCallbackMask リストビューコントロールのコールバックマスクを設定します。 |
89 |
SetCheck アイテムに関連付けられた状態画像の現在の表示ステータスを設定します。 |
90 |
SetColumn リストビュー列の属性を設定します。 |
91 |
SetColumnOrderArray リストビューコントロールの列の順序(左から右)を設定します。 |
92 |
SetColumnWidth レポートビューまたはリストビューの列の幅を変更します。 |
93 |
SetExtendedStyle リストビューコントロールの現在の拡張スタイルを設定します。 |
94 |
SetGroupInfo リストビューコントロールの指定されたグループの情報を設定します。 |
95 |
SetGroupMetrics リストビューコントロールのグループメトリックを設定します。 |
96 |
SetHotCursor リストビューコントロールでホットトラッキングが有効な場合に使用されるカーソルを設定します。 |
97 |
SetHotItem リストビューコントロールの現在のホットアイテムを設定します。 |
98 |
SetHoverTime リストビューコントロールの現在のホバー時間を設定します。 |
99 |
SetIconSpacing リストビューコントロールのアイコン間の間隔を設定します。 |
100 |
SetImageList 画像リストをリストビューコントロールに割り当てます。 |
101 |
SetInfoTip ツールチップのテキストを設定します。 |
102 |
SetInsertMark 挿入ポイントを定義された位置に設定します。 |
103 |
SetInsertMarkColor 挿入ポイントの色を設定します。 |
104 |
SetItem リストビューアイテムの属性の一部またはすべてを設定します。 |
105 |
SetItemCount 多数のアイテムを追加するためのリストビューコントロールを準備します。 |
106 |
SetItemCountEx 仮想リストビューコントロールのアイテム数を設定します。 |
107 |
SetItemData アイテムのアプリケーション固有の値を設定します。 |
108 |
SetItemIndexState 現在のリストビューコントロールの項目の状態を設定します。 |
109 |
SetItemPosition リストビューコントロール内の指定された位置にアイテムを移動します。 |
110 |
SetItemState リストビューコントロール内のアイテムの状態を変更します。 |
111 |
SetOutlineColor リストビューコントロールの境界線の色を設定します。 |
112 |
SetSelectedColumn リストビューコントロールの選択した列を設定します。 |
113 |
SetSelectionMark リストビューコントロールの選択マークを設定します。 |
114 |
SetTextBkColor リストビューコントロールのテキストの背景色を設定します。 |
115 |
SetTextColor リストビューコントロールのテキストの色を設定します。 |
116 |
SetTileInfo リストビューコントロールのタイルの情報を設定します。 |
117 |
SetTileViewInfo リストビューコントロールがタイルビューで使用する情報を設定します。 |
118 |
SetToolTips リストビューコントロールがツールチップを表示するために使用するツールチップコントロールを設定します。 |
119 |
SetView リストビューコントロールのビューを設定します。 |
120 |
SetWorkAreas リストビューコントロールでアイコンを表示できる領域を設定します。 |
121 |
SortGroups リストビューコントロールのグループをユーザー定義関数で並べ替えます。 |
122 |
SortItems アプリケーション定義の比較関数を使用してリストビュー項目を並べ替えます。 |
123 |
SortItemsEx アプリケーション定義の比較関数を使用してリストビュー項目を並べ替えます。 |
124 |
SubItemHitTest 特定の位置にあるリストビュー項目がある場合、それを決定します。 |
125 |
Update コントロールに指定された項目を再描画させます。 |
126 |
SetItemText リストビューのアイテムまたはサブアイテムのテキストを変更します。 |
127 |
GetCallbackMask リストビューコントロールのコールバックマスクを取得します。 |
新しいMFCダイアログベースのアプリケーションを作成して、簡単な例を見てみましょう。
- ステップ1 *-TODO行を削除し、1つのリストコントロールをドラッグします。
- ステップ2 *-[プロパティ]ウィンドウの[表示]ドロップダウンリストにさまざまなオプションが表示されます。
- ステップ3 *-[表示]フィールドからレポートを選択します。
- ステップ4 *-リスト制御に制御変数m_listCtrlを追加します。
- ステップ5 *-OnInitDialog()でリストコントロールを初期化する
BOOL CMFCListControlDlg::OnInitDialog() {
CDialogEx::OnInitDialog();
//Set the icon for this dialog. The framework does this automatically
//when the application's main window is not a dialog
SetIcon(m_hIcon, TRUE); //Set big icon
SetIcon(m_hIcon, FALSE); //Set small icon
//TODO: Add extra initialization here
//Ask Mfc to create/insert a column
m_listCtrl.InsertColumn(
0, //Rank/order of item
L"ID", //Caption for this header
LVCFMT_LEFT, //Relative position of items under header
100); //Width of items under header
m_listCtrl.InsertColumn(1, L"Name", LVCFMT_CENTER, 80);
m_listCtrl.InsertColumn(2, L"Age", LVCFMT_LEFT, 100);
m_listCtrl.InsertColumn(3, L"Address", LVCFMT_LEFT, 80);
int nItem;
nItem = m_listCtrl.InsertItem(0, L"1");
m_listCtrl.SetItemText(nItem, 1, L"Mark");
m_listCtrl.SetItemText(nItem, 2, L"45");
m_listCtrl.SetItemText(nItem, 3, L"Address 1");
nItem = m_listCtrl.InsertItem(0, L"2");
m_listCtrl.SetItemText(nItem, 1, L"Allan");
m_listCtrl.SetItemText(nItem, 2, L"29");
m_listCtrl.SetItemText(nItem, 3, L"Address 2");
nItem = m_listCtrl.InsertItem(0, L"3");
m_listCtrl.SetItemText(nItem, 1, L"Ajay");
m_listCtrl.SetItemText(nItem, 2, L"37");
m_listCtrl.SetItemText(nItem, 3, L"Address 3");
return TRUE;//return TRUE unless you set the focus to a control
}
- ステップ6 *-上記のコードをコンパイルして実行すると、次の出力が表示されます。