如何使用Win32 api将树视图项设置为可见/不可见

时间:2012-08-05 19:46:19

标签: c++ c winapi treeview

我正在开发一个使用WIN32 API实现的项目,根据用户输入的一些数据,我需要运行时的一些树视图项可见/不可见。我做了一些工作,在那里我发现我可以在树视图控件中添加/删除项目,但无法在任何地方找到如何设置项目可见或不可见(我找到了一些可以通过MFC完成的示例)。 / p>

我正在寻找将它们设置为可见/不可见的方法,因为当我添加项目时,它需要进行大量的后端计算,重复添加或删除会导致性能问题。我只希望每个树视图项只进行一次计算。

我认为,如果无法设置树视图项,其中一个解决方案就是只显示一个存在树视图项的链表,并添加/删除那些需要显示的项/不可见的。

请告诉我是否可以将树视图项目的状态设置为可见/不可见,如果是,那么如何?如果不是,还有什么其他替代解决方案?

1 个答案:

答案 0 :(得分:5)

标准TreeView控件没有任何节点可见性概念。添加/删除节点是唯一的选择。您必须维护节点显示的数据的单独链接列表缓存(无论如何您应该这样做,以便将UI逻辑与业务逻辑分开)。否则,您需要编写自己的TreeView控件,或者找到满足您需求的第三方实现。

相关问题