【发布时间】:2019-01-23 05:14:21
【问题描述】:
要求是:
- 按钮和标题文本应该在一个组中以对齐在一起
- 当我点击向上箭头按钮时,列表将被排序(图中未排序:D),图标变为向下箭头,以相反的顺序排序。
我该怎么做?
【问题讨论】:
-
我认为你不需要按钮,好吧,如果用户名列被排序,那么地址列呢?看看stackoverflow.com/questions/372391/…
标签: qt qtreeview qheaderview
要求是:
我该怎么做?
【问题讨论】:
标签: qt qtreeview qheaderview
如果您对默认指标的外观和行为感到满意,那么以下代码就足够了:
//Set up QTreeView, add model etc...
tree_view->setSortingEnabled(true);
QHeaderView* header = tree_view->header();
header->setSortIndicatorShown(true);
如果您想自定义排序行为,请查看QSortFilterProxyModel。
要设置指示器的样式,您也许可以使用 Qt 的样式表:
QHeaderView::down-arrow {
image: url(down_arrow.png);
}
QHeaderView::up-arrow {
image: url(up_arrow.png);
}
【讨论】:
above 标题文本,但我想要指示器 besides 标题文本。因此我说我想将文本和指标组合在一起。
QHeaderView::up-arrow { subcontrol-origin:padding; subcontrol-position: center right;}之类的吗?
header()->setItemDelegateForRow( 0, new HeaderDelegate( this ) ) :)