0

我想在 QTabWidget 的两个不同标签页中使用一个通用控件(QTreeView)。这该怎么做 ?

我在 Qt 设计器的标签页中添加了一个 tabwidget 和控件。在 Win 7 中使用 qt creator 版本 2.4.1。

4

1 回答 1

2

您不能在两个不同的 QTabWidget 页面中拥有相同的 QTreeView。当您将任何小部件添加到布局时,该布局将拥有该小部件的所有权。由于只能有一个所有者,因此每个小部件都有一个父级。

但你可以伪造它。给你的主页一个网格布局。在顶部放置一个QTabBar,在左侧(或任何位置)放置 QTreeView,在右侧放置 QStackedLayout。连接选项卡栏和堆叠布局,以便更改栏中的选项卡会更改堆叠布局中的可见页面。

这应该正是您正在寻找的 - 只需准备好与 QTabBar 战斗,让它像您想要的那样显示......

或者,只需使用两个单独的树视图 - 毕竟它们都将查看相同的模型,因此不会复制大量数据。也为您节省了与 QTabBar 的战斗。

希望有帮助!

于 2012-07-20T07:14:54.220 回答