#qt #qlistwidget
#qt #qlistwidget
Вопрос:
Я не могу найти способ поместить строку между элементами в моем списке. Я что-то упускаю?
Ответ №1:
Таблица стилей была бы проще всего, например:
myListWidget->setStyleSheet( "QListWidget::item { border-bottom: 1px solid black; }" );
Вы захотите взглянуть на некоторую документацию по таблице стилей
Комментарии:
1. Ах, красиво. Я пропустил это в документации. Это действительно хорошая функция.
Ответ №2:
2 улучшения принятого ответа:
- Используйте цветовую палитру виджета для достижения единообразного внешнего вида в разных системах.
- Необходимо восстановить
item:selected
стиль при рестайлингеitem
Например, вот так:
const auto amp; palette = tableWidget.palette();
tableWidget.setStyleSheet(QString("QListWidget::item { border-bottom: 1px solid %1; } QListWidget::item:selected { background-color: %2; color: %3; }")
.arg(palette.midlight().color().name(),
palette.highlight().color().name(),
palette.highlightedText().color().name()));
Здесь вы можете видеть, что разделительные строки и цвет выделения соответствуют стилю виджета по умолчанию: