VC++如何在多列中添加复选框

Posted

技术标签:

【中文标题】VC++如何在多列中添加复选框【英文标题】:How to add checkboxes in multiple columns in VC++ 【发布时间】:2014-12-05 05:44:02 【问题描述】:

我是 Visual C++ 的新手,我正在使用 Visual C++ 2005,我想在报告中显示一些我正在使用 ListControl 的记录。我的单个记录条目包含两个布尔字段,因此ListControl 中的每一行都用复选框表示。简而言之,每行将有两个复选框。我使用了ListControl,但我发现每个条目只有一个复选框。那么任何人都可以解释我如何在ListControl 中添加多列复选框,以及我可以使用哪些其他类在 Visual C++ 中做同样的事情。我将InitDialog 实现为:

BOOL MyRecords::OnInitDialog()

    CDialog::OnInitDialog();

    m_listCtrl.SetExtendedStyle(LVS_EX_CHECKBOXES);
    m_listCtrl.InsertColumn(1,"First-Bool");
    m_listCtrl.SetColumnWidth(0, 70);

    UInt16 i = 0;
    CString pcid;

    for ( ; i <= 503; i++) 
        pcid.Format(_T("%d"), i);
        m_listCtrl.InsertItem(i, pcid);
    

    return true;

【问题讨论】:

使用BOOL时最好使用return TRUE; 【参考方案1】:

CListCtrl 带有报告视图的类将允许您仅在第一列中添加复选框。要在多列中添加复选框,您必须派生您自己的 CListCtrl,并且您必须自己完成。以下是一些可能对您有所帮助的示例:

    http://www.codeproject.com/Articles/29064/CGridListCtrlEx-Grid-Control-Based-on-CListCtrl http://www.codeproject.com/Articles/1796/XListCtrl-A-custom-draw-list-control-with-subitem http://www.codeproject.com/Articles/8112/CQuickList

【讨论】:

以上是关于VC++如何在多列中添加复选框的主要内容,如果未能解决你的问题,请参考以下文章

如何使用更改表查询在 AWS Redshift 中添加多列

EXCEL中如何把一列数据变为多列?

如何在一项作业中向熊猫数据框添加多列?

如何在熊猫数据透视表上添加列(多列)

如何使用 Fluent API 通过 ASC/DESC 排序在多列上添加索引?

如何在我的 C# Visual Studio 项目中添加 VC++ DLL 作为引用?