MFC/QT 學習筆記(四)——MFC基於對話框學習控件(下)

//5.列表控件 ListControlspa

屬性 報表模式 view:Report;添加變量3d

//Cdemo5Dlg.cppcode

ps:資源視圖 右鍵 類嚮導 成員變量 查看對象所屬類orm

// TODO: 在此添加額外的初始化代碼
    //列表控件使用
    CString str[] = { TEXT("姓名"),TEXT("性別"), TEXT("年齡") };
    for (int i = 0; i < 3; i++) {
        //設置表頭:索引,內容,對齊方式,列寬
        m_list.InsertColumn(i, str[i],LVCFMT_LEFT,100);
    }
    //設置正文
    //表頭不算,索引從0開始
    //插入表格內容
    //m_list.InsertItem(0, TEXT("張三"));
    //設置其餘數據
    //m_list.SetItemText(0, 1, TEXT("男"));
    for (int i = 0; i < 5; i++) {
        CString name;
        name.Format(TEXT("張三_%d"), i);
        m_list.InsertItem(i, name);
        //性別和年齡
        m_list.SetItemText(i, 1, TEXT(""));
        m_list.SetItemText(i, 2, TEXT("18"));
    }
    //設置屬性 parameter:整行選中 | 網格顯示
    m_list.SetExtendedStyle(m_list.GetExtendedStyle() | LVS_EX_FULLROWSELECT | LVS_EX_GRIDLINES);

 

//6.樹控件 TreeCtrl對象

屬性 線Has Lines; 按鈕Has Buttons;blog

 

 //Cdemo6Dlg.cpp索引

資源視圖 Icon 右鍵 添加資源 導入bmp事件

// TODO: 在此添加額外的初始化代碼
    //樹控件使用:
    //1.設置圖標
    //準備圖標句柄
    HICON icons[4];
    icons[0] = AfxGetApp()->LoadIconW(IDI_ICON1);
    icons[1] = AfxGetApp()->LoadIconW(IDI_ICON2);
    icons[2] = AfxGetApp()->LoadIconW(IDI_ICON3);
    icons[3] = AfxGetApp()->LoadIconW(IDI_ICON4);

    //CImageList list;//必須保存住這個圖片 寫道 .h 文件中

    //建立圖片集合:資源視圖 Icon 右鍵 添加資源 導入 ;大小,色位,圖片數量,圖片空間;
    list.Create(30, 30, ILC_COLOR32, 4, 4);
    //添加具體的圖片:
    for (int i = 0; i < 4; i++) {
        list.Add(icons[i]);
    }
    m_tree.SetImageList(&list,TVSIL_NORMAL);

    //2.設置節點
    HTREEITEM root = m_tree.InsertItem(TEXT("根節點"), 0, 0, NULL);
    HTREEITEM parent = m_tree.InsertItem(TEXT("父節點"), 1, 1, root);
    HTREEITEM sub1 = m_tree.InsertItem(TEXT("子節點1"), 2, 2, parent);
    HTREEITEM sub2 = m_tree.InsertItem(TEXT("子節點2"), 3, 3, parent);

    //設置默認節點
    m_tree.SelectItem(sub1);

//屬性 事件 TVN_SELCHANGED 節點間切換 觸發事件圖片

void Cdemo6Dlg::OnTvnSelchangedTree1(NMHDR *pNMHDR, LRESULT *pResult)
{
    LPNMTREEVIEW pNMTreeView = reinterpret_cast<LPNMTREEVIEW>(pNMHDR);
    // TODO: 在此添加控件通知處理程序代碼
    *pResult = 0;

    //獲取當前項
    HTREEITEM item = m_tree.GetSelectedItem();
    CString name = m_tree.GetItemText(item);
    MessageBox(name);
}

 

//7. 標籤頁 TabCtrl資源

引用 TabSheet.h .cpp 添加到項目中;屬性 Border:None ; Style:Child ;添加變量 類型 TabSheet

 

 

//Cdemo7Dlg.h

public:
    CTabSheet m_tab;

    CDlg1 dlg1;
    CDlg2 dlg2;

 //Cdemo7Dlg.cpp

    // TODO: 在此添加額外的初始化代碼
    //添加標籤頁
    m_tab.AddPage(TEXT("系統設置"), &dlg1, IDD_DIALOG1);
    m_tab.AddPage(TEXT("系統管理"), &dlg2, IDD_DIALOG2);
    //顯示
    m_tab.Show();
相關文章
相關標籤/搜索