- MFC 教程
- MFC - 首頁
- MFC - 概述
- MFC - 環境設定
- MFC - VC++ 專案
- MFC - 入門指南
- MFC - Windows 基礎
- MFC - 對話方塊
- MFC - Windows 資源
- MFC - 屬性表
- MFC - 窗口布局
- MFC - 控制元件管理
- MFC - Windows 控制元件
- MFC - 訊息與事件
- MFC - ActiveX 控制元件
- MFC - 檔案系統
- MFC - 標準 I/O
- MFC - 文件/檢視
- MFC - 字串
- MFC - CArray
- MFC - 連結串列
- MFC - 資料庫類
- MFC - 序列化
- MFC - 多執行緒
- MFC - Internet 程式設計
- MFC - GDI
- MFC - 庫
- MFC 有用資源
- MFC - 快速指南
- MFC - 有用資源
- MFC - 討論
MFC - 樹控制元件
樹形檢視控制元件是一個顯示專案分層列表的視窗,例如文件中的標題、索引中的條目或磁碟上的檔案和目錄。每個專案都包含一個標籤和一個可選的點陣圖影像,並且每個專案都可以有一系列與其關聯的子專案。透過單擊某個專案,使用者可以展開和摺疊關聯的子專案列表。它由CTreeCtrl類表示。
讓我們透過建立一個新的基於 MFC 對話方塊的專案來了解一個簡單的示例。
步驟 1 - 專案建立後,您將看到 TODO 行,它是文字控制元件的標題。刪除標題並將 ID 設定為 IDC_STATIC_TXT。
步驟 2 - 為靜態文字控制元件新增一個值變數 m_strTree。
步驟 3 - 從控制元件工具箱中拖動樹形控制元件。
步驟 4 - 在對話方塊上,單擊樹形控制元件以將其選中。在“屬性”視窗中,將“具有按鈕”、“具有線條”、“根節點處的線條”、“客戶端邊緣”和“模態框架”屬性設定為“True”。
步驟 5 - 為樹形控制元件新增一個控制元件變數 m_treeCtrl。
步驟 6 - 這是在 OnInitDialog() 中初始化樹形控制元件的程式碼
BOOL CMFCTreeControlDlg::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
HTREEITEM hItem, hCar;
hItem = m_treeCtrl.InsertItem(L"Car Listing", TVI_ROOT);
hCar = m_treeCtrl.InsertItem(L"Economy", hItem);
m_treeCtrl.InsertItem(L"BH-733", hCar);
m_treeCtrl.InsertItem(L"SD-397", hCar);
m_treeCtrl.InsertItem(L"JU-538", hCar);
m_treeCtrl.InsertItem(L"DI-285", hCar);
m_treeCtrl.InsertItem(L"AK-830", hCar);
hCar = m_treeCtrl.InsertItem(L"Compact", hItem);
m_treeCtrl.InsertItem(L"HG-490", hCar);
m_treeCtrl.InsertItem(L"PE-473", hCar);
hCar = m_treeCtrl.InsertItem(L"Standard", hItem);
m_treeCtrl.InsertItem(L"SO-398", hCar);
m_treeCtrl.InsertItem(L"DF-438", hCar);
m_treeCtrl.InsertItem(L"IS-833", hCar);
hCar = m_treeCtrl.InsertItem(L"Full Size", hItem);
m_treeCtrl.InsertItem(L"PD-304", hCar);
hCar = m_treeCtrl.InsertItem(L"Mini Van", hItem);
m_treeCtrl.InsertItem(L"ID-497", hCar);
m_treeCtrl.InsertItem(L"RU-304", hCar);
m_treeCtrl.InsertItem(L"DK-905", hCar);
hCar = m_treeCtrl.InsertItem(L"SUV", hItem);
m_treeCtrl.InsertItem(L"FE-948", hCar);
m_treeCtrl.InsertItem(L"AD-940", hCar);
hCar = m_treeCtrl.InsertItem(L"Truck", hItem);
m_treeCtrl.InsertItem(L"HD-394", hCar);
return TRUE; // return TRUE unless you set the focus to a control
}
步驟 7 - 編譯並執行上述程式碼後,您將看到以下輸出。
mfc_windows_controls.htm
廣告