![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() |
Флинт |
![]()
Сообщение
#1
|
Новичок Группа: Новичок Сообщений: 8 Регистрация: 1.10.2011 Пользователь №: 2919 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
Вот собственно скриншот макета:
![]() Данные берутся из базы данных, за заголовок, тэги, дату и пр. отвечает своя ячейка в базе данных. Модель пока сделал, наследуясь от QSqlQueryModel, для представления мне кажется лучше всего подойдет ListView, но как заполнить один его элемент данными из нескольких ячеек таблицы? И как добиться нужного форматирования этих данных? Можно ли сделать это делегатом, или нужно писать свое представление? Направьте в нужную сторону пожалуйста ![]() |
|
|
![]() |
Флинт |
![]()
Сообщение
#2
|
Новичок Группа: Новичок Сообщений: 8 Регистрация: 1.10.2011 Пользователь №: 2919 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
попробуй использовать QString QFontMetrics::elidedText ( const QString & text, Qt::TextElideMode mode, int width, int flags = 0 ) const Добавляет три точки, где текст обрывается, не знаю чем это может помочь ![]() Пробывал через QFontMetrics узнавать высоту каждой строчки, но не понял как вычислить высоту абзаца. |
|
|
Sokoloff |
![]()
Сообщение
#3
|
Участник ![]() ![]() Группа: Участник Сообщений: 237 Регистрация: 1.4.2009 Из: Москва Пользователь №: 654 Спасибо сказали: 50 раз(а) Репутация: ![]() ![]() ![]() |
попробуй использовать QString QFontMetrics::elidedText ( const QString & text, Qt::TextElideMode mode, int width, int flags = 0 ) const Добавляет три точки, где текст обрывается, не знаю чем это может помочь ![]() Пробывал через QFontMetrics узнавать высоту каждой строчки, но не понял как вычислить высоту абзаца. Надо установить свойство uniformRowHeights в false. Перекрыть SizeHint. Для получения размера текста можешь использовать параметр boundingRect в QPainter::drawText. |
|
|
![]() ![]() ![]() |
![]() |
Текстовая версия | Сейчас: 17.2.2025, 12:48 |