Как стилизовать флажок в QListView, чтобы метка находилась под флажком? - PullRequest
2 голосов
/ 11 апреля 2011

У меня есть горизонтальная QListView, и я хочу настроить флажок и метку внутри с помощью таблицы стилей, чтобы поместить метку под флажком, а не с правой стороны.

Как это можно сделать?

Ответы [ 3 ]

4 голосов
/ 07 марта 2012

Я не уверен, будет ли это работать в вашем случае, но я искал похожую вещь (для QTreeWidget флажков) и обнаружил, что это работает:

tree_widget.setStyleSheet("QTreeView::indicator:checked { background:red; }");

Я представляю QListView также будет иметь indicator, но сейчас я не могу проверить.Попробуйте это:

QListView::indicator {
    subcontrol-position: top center;
}
0 голосов
/ 15 апреля 2011

Таким образом, единственное решение - создать делегированного элемента стиля с вашим пользовательским флажком и меткой, просто измените этот код: http://discussion.forum.nokia.com/forum/showthread.php?217027-Display-widget-as-items-in-a-QListView&p=813138&viewfull=1#post813138

0 голосов
/ 12 апреля 2011
QCheckBox::indicator {
    subcontrol-position: top center;
}

сделает работу.Решение некрасиво, но работает.Не уверен, что он будет работать всегда - возможно, вам придется поиграть с политиками компоновки QCheckBox или посмотреть, сможете ли вы заранее выделить для него достаточно места.Опять же - никаких обещаний.Это сработало на моем тестовом примере с Qt 4.7.1

...