我需要像在 Process Explorer 中一样实现 TreeList 控件。 我是 GUI 新手,没有写过这么复杂的控件。
正如我在 Process Explorer 中看到的,有一个 TreeListWindowClass,它包含子项: 2 个标题、3 个滚动条(其中一个不可见?)和 1 个静态(位于可见滚动条之间)。 据我了解,主控件在其内部绘制所有项目。 我也没有在附加的 dll 中找到 mfcxxx.dll。
问题一:用什么框架比较好? 有:MFC、WTL、plain WinAPI …… 我看了一下这个实现 http://www.codeguru.com/cpp/controls/treeview/classes/article.php/c13167并与结构庞大的 cpp 文件中超过 8000 行的代码混淆(其中一个包含 80 个成员)。 它是普通的 WinAPI(和没有++ 的 C)。 我绝对想使用 OOP 风格。 =)
问题二: 这个控件的高层设计应该是什么? 你能解释一下这个控件应该如何设计吗?
我的限制:C++、VS10、操作系统:Vista 及更高版本。
提前致谢
最佳答案
我最近这样做并使用了来自 http://www.mimec.org/articles/mfc/mctree 的多列 TreeView
它是相当基础的,但它满足了我的需要并且相当紧凑。它提供了 CColumnTreeView
类,它是 CView
的子类 - 因此它可以与 MFC 的标准 CDocument/CView 模式一起正常工作。
关于c++ - TreeListView 控件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5385231/