首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> C語言 >> VC >> 關於VC++

使用三態樹狀結構實作多重登錄檔子機碼選取

     編輯:關於VC++

前言

本文介紹如何實作登錄檔瀏覽與多重子機碼選取功能,並可搭配 CRegisterExport 類別 (參考「導入導出登錄檔項目的類別」一文) 將選取的登錄檔項目匯出。

將 CRegisterTreeCtrl 加入專案步驟

步驟 1:建立對話方塊專案

使用 Visual C++ 建立新的對話方塊型應用程式專案。

步驟 2:加入類別檔案

將 RegisterTreeCtrl.h 與 RegisterTreeCtrl.cpp 加入專案中。

步驟 3:匯入點陣圖資源

將 STATEBMP.BMP、folderbmp.bmp 加入專案資源,並設定資源 ID:

  • folderbmp.bmp → IDB_BITMAP_LIST
  • STATEBMP.BMP → IDB_BITMAP_STATE

步驟 4:宣告樹狀控制項

在對話方塊類別中宣告:

CRegisterTreeCtrl m_tree;

步驟 5:初始化程式碼

在 OnInitDialog() 中加入:

BOOL CMultiFolderDlg::OnInitDialog()
{
    CDialog::OnInitDialog();
    ......
    
    m_imgState.Create(IDB_BITMAP_STATE, 13, 1, RGB(255,255,255));
    m_imgList.Create(IDB_BITMAP_LIST, 16, 1, RGB(255,255,255));
    
    m_tree.SetImageList(&m_imgList, TVSIL_NORMAL);
    m_tree.SetImageList(&m_imgState, TVSIL_STATE);
    
    DWORD dwVersion;
    BOOL bWinNT = FALSE;
    dwVersion = GetVersion();
    // 判斷作業系統版本
    if (dwVersion < 0x80000000) // Windows NT
    {
        bWinNT = TRUE;
    }
    m_tree.DisplayTree(bWinNT);
    
    return TRUE;
}

參考資料

徐景洲的三態樹實作

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved