0

我需要在这样的标题文本旁边创建一个按钮以进行排序。 在此处输入图像描述

要求是:

  • 按钮和标题文本应该在一个组中以对齐在一起
  • 当我单击 up_arrow 按钮时,列表将被排序(在图片中它没有排序:D),并且图标变为 down_arrow 以按相反顺序排序。

在此处输入图像描述

我怎样才能做到这一点?

4

1 回答 1

0

如果您对默认指标的外观和行为感到满意,那么以下代码就足够了:

//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);
}
于 2018-08-16T15:18:10.483 回答