MFCツリーコントロール
1.最初にウィンドウ内のコントロールをドラッグします
2.プロパティを設定します。
線がある:点線を使用してノードレベルをリンクします
Butonあり:折りたたみボタンと展開ボタンを追加
3.写真のコレクションを設定します
3.1 SetImageList(CImageList * list、通常の表示マクロ)
3.1.1 CImageListオブジェクトは.hファイルで宣言されており、ヒープで使用された場合はリサイクルされます
3.2 create create(30、30 xxビットカラー、4、4)を作成します
3.3 add(HICON)
4.ノードを追加します
4.1 InsertItem(ノード名、表示画像、選択した画像、親ノード)
5.デフォルトノードのSelectItemを設定します
// 1アイコンを設定します // CImageListリスト; //アイコンリストはグローバルとして宣言する必要があります。そうしないと、ヒープに配置して使用した後に削除されます 。.hファイルに配置する必要があります 。//1.1HICONアイコンの準備HICONアイコン[3] ; //実行可能ファイルからnIDResourceで指定されたアイコンリソースをロードします icons [0] = AfxGetApp()-> LoadIconW(IDI_ICON2); icons [1] = AfxGetApp()-> LoadIconW(IDI_ICON3); icons [2] = AfxGetApp( )-> LoadIconW(IDI_ICON4); //画像のコレクションを作成します list.Create(30,30、ILC_COLOR32,4,4); // (int i = 0; i <3; i ++){ listの特定の画像を追加します.add(iconsThe [I]); } mTree.SetImageList(&List、TVSIL_NORMAL); // 2ノード名を設定します。デフォルトの画像、選択した画像は、 HTREEITEM root = mTree.InsertItem(TEXT( "root node" )、0、0、0); HTREEITEM父= mTree.InsertItem(TEXT( "親ノード")、1,1、ルート); HTREEITEM sub1 = mTree.InsertItem(TEXT( "child node")、2,2、father); HTREEITEM sub2 = mTree.InsertItem(TEXT( "child node")、2、2 、father); //デフォルトオプション mTreeを設定します.SelectItem(sub1);
6.ノードを切り替えるためのトリガーイベント
6.1、現在のアイテムを取得するGetSelectedItem
6.2、アイテムに従ってコンテンツGetItemTextを取得します
void CMFC06TreeControlDlg :: OnTvnSelchangedTree1(NMHDR * pNMHDR、LRESULT * pResult) { LPNMTREEVIEW pNMTreeView = reinterpret_cast <LPNMTREEVIEW>(pNMHDR); // TODO:ここにコントロール通知ハンドラーコードを追加 * pResult = 0; //現在選択されているアイテムのハンドルを取得 item = mTree.GetSelectedItem an HTREEITEM(); //選択したハンドルに従ってコンテンツアイテムを検索します CStringname = mTree.GetItemText(item); MessageBox(name、_T( "name")); }