【问题标题】:Windows ListView control (or similar) that can have multiple columns of checkboxes?可以有多列复选框的 Windows ListView 控件(或类似控件)?
【发布时间】:2011-07-08 06:06:53
【问题描述】:

好的,所以我的 Windows 应用程序包含一个窗口,其中包括一个窗格中的对象列表。每个对象都有 8 个需要确定的布尔值——所以我想要一个对象列表,后面有八列复选框。我没有使用 MFC,应该是相关的。

ListView 看起来符合我的要求,但显然它不接受 SubItems 中的复选框(LVS_EX_CHECKBOXES 样式仅在左侧为每一行提供一个复选框)。

因此,我需要一种 确实 允许这样做的 ListView 替代方案。我一直在寻找,但我发现似乎没有任何效果。

我看到了对一些DataGridView 控件的引用,但我不认为这是我的 Visual Studio 2010“工具箱”中的一个选项——如何访问它,它甚至可用于非 MFC C++ 项目吗?大多数对它的引用似乎是针对 VB 或 C#。

我发现的另一件事是custom ListView,但它似乎是针对 C# 而不是 C++。如果有一种与 C# 对话交互的简单方法(我完全不熟悉 C#),我当然会接受有关如何在我的代码中使用此资源的建议。

无论如何,任何人的任何想法、建议或提示都将不胜感激!

编辑:这可能应该进入一个新问题,但它本身似乎并不值得一个完整的问题:MFC 似乎对这种事情有更多的支持(只要我可以找到下载的大多数自定义控件都是用于 MFC 的)。我的项目实际上并不要求是非 MFC,目前它只是 。我需要做多少工作才能转换它?

【问题讨论】:

  • DataGridView 是 .net,因此无论是普通的 Win32 还是 MFC,您都不会在任何 Win32 项目中看到它。您可能需要某种自定义控件,找到网格控件可能是最简单的,因为周围有很多这样的控件,因为它们往往比列表视图更灵活。您正在使用什么 UI 工具包(如果有)?如果您不使用 MFC,您在 VS 工具箱中寻找什么?
  • 在 Visual Studio 的“资源视图”中,我可以使用所见即所得的编辑器制作我的窗口;在右侧有一个“工具箱”,其中包含我可以拖放到窗口中的各种控件。这不需要 MFC;我可以通过普通的 Windows 消息系统与它进行交互。无论如何,有没有人知道一个好用的网格控件?
  • 啊,我忘了资源对话框编辑器了。谢谢。
  • 顺便说一句,从个人经验来说,这不是一个很好的用户界面。
  • @Luke:嗯,你有什么建议?我需要向用户公开的每个项目有 8 个布尔值,这可能是一个冗长的项目列表。当然,它不会很好用,但我真的想不出更好的设计方法。想法?

标签: c++ windows visual-studio-2010 listview checkbox


【解决方案1】:

好吧,我已经冒险开始使用 MFC 了;我下载的CGridCtrl 似乎运行良好,尽管我还有很多工作要做。那么,我将把它称为答案,因为似乎没有另一个答案。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-10-25
    • 1970-01-01
    • 2012-03-30
    • 2014-05-09
    • 2022-07-16
    相关资源
    最近更新 更多