当前位置:编程学习 > C/C++ >>

列表控件

[cpp] 
 
[cpp] 
///OnInitDialog()中添加代码 
[cpp]
//为列表控件添加列 
m_list.InsertColumn(0,_T("第1列") , LVCFMT_LEFT,100); 
m_list.InsertColumn(1,_T("第2列") ,LVCFMT_LEFT ,100); 
///创建图片列表 
m_images.Create(32 ,32 ,ILC_COLOR32 ,1,1); 
///在图片列表中添加一个图标 
m_images.Add(m_hIcon); 
///将图片列表关联到对话框上的列表控件 
m_list.SetImageList(&m_images ,LVSIL_SMALL); 
m_list.SetImageList(&m_images, LVSIL_NORMAL); 

////CListCtrlDemoDlg头文件添加变量m_images
[cpp] 
CImageList m_images 

[cpp] 
///“添加行”按钮的响应函数 
void CListCtrlDemoDlg::OnBtnAdd()  

    // TODO: Add your control notification handler code here 
    int nCount =  m_list.GetItemCount(); 
    TCHAR szText[128] = {0}; 
    _stprintf(szText , _T("第%d行第1列") , nCount + 1); 
    m_list.InsertItem(nCount ,szText , 0); 
    _stprintf(szText , _T("第%d行第2列") ,nCount + 1); 
    m_list.SetItemText(nCount , 1,szText); 

 
void CListCtrlDemoDlg::OnBtnDelete()  

    // TODO: Add your control notification handler code here 
    ///获取总行数 
    int nCount = m_list.GetItemCount(); 
    //循环,从下往上删除所选的行 
    for(int i = nCount ; i >=0 ;i--) 
    { 
        if(m_list.GetItemState(i , LVIS_SELECTED) == LVIS_SELECTED) 
            m_list.DeleteItem(i); 
    } 

///组合框改变的消息响应函数
[cpp] 
void CListCtrlDemoDlg::OnSelchangeCmbView()  

    // TODO: Add your control notification handler code here 
    DWORD dwStyle; 
    ///获得控件 
    CComboBox *pView; 
    pView = (CComboBox*)GetDlgItem(IDC_CMB_VIEW); 
    ///根据控件当前所选,得到列表框新的显示风格 
    switch(pView->GetCurSel()) 
    { 
    case 0 ://大图标 
        dwStyle  = LVS_ICON; 
        break; 
    case 1://小图标 
        dwStyle = LVS_SMALLICON; 
        break; 
    case 2: 
        dwStyle = LVS_LIST; 
        break; 
    case 3: 
        dwStyle = LVS_REPORT; 
        break; 
    default: 
        return; 
    } 
    ///应用新风格 
    m_list.ModifyStyle(LVS_TYPEMASK , dwStyle); 

界面设计
列表控件ID为IDC_LIST,关联变量m_list
两个按钮控件ID为IDC_BTN_ADD和IDC_BTN_DELETE
组合框ID为IDC_CMB_VIEW,为其添加消息响应函数CBN_SELCHANGE

 

 

补充:软件开发 , C++ ,
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,