Как сделать в списке элементов Qt, например, QListWidget, но несколько строк, несколько изображений, кнопки, такие как HTML-текстовые ссылки и оформление текста (полужирный / курсив / и т.д.).
Помогите мне, если вам известен хотя бы один из этих вариантов.
Благодарю.
Вы можете настроить QListWidget
как вам нравится. Пожалуйста, изучите эту тему:
http://www.qtcentre.org/threads/27777-Customize-QListWidgetItem-how-to
В ней есть вся необходимая информация. Идея в том, что вам нужно установить пользовательский делегат, используя функцию setItemDelegate
вашей QListWidget
,
class ListDelegate : public QAbstractItemDelegate
{
public:
ListDelegate(QObject *parent = 0);
void paint ( QPainter * painter, const QStyleOptionViewItem & option, const QModelIndex & index ) const;
QSize sizeHint ( const QStyleOptionViewItem & option, const QModelIndex & index ) const;
virtual ~ListDelegate();
};
в paint()
Функция вы можете нарисовать весь текст / изображения, как вам нужно.
Других решений пока нет …