crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

 
Ответить в данную темуНачать новую тему
> Как при наведении мыши на элемент QTreeWidget вывести тултип с полной строкой колонки дерева?
Rocky
  опции профиля:
сообщение 4.3.2009, 22:51
Сообщение #1


Старейший участник
****

Группа: Участник
Сообщений: 530
Регистрация: 22.12.2008
Из: Санкт-Петербург
Пользователь №: 463

Спасибо сказали: 22 раз(а)




Репутация:   7  


Всем привет!

Есть QTreeWidget с несколькими колонками. В 1-й колонки бывает очень длинная текстовая строка, которая не отображается полностью. Как бы так сделать, чтобы при наведении мыши она вся отображалась в всплывающей подсказке? Есть идея через делегаты, но может есть более правильный способ....

Спасибо!
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
SABROG
  опции профиля:
сообщение 4.3.2009, 23:00
Сообщение #2


Профессионал
*****

Группа: Участник
Сообщений: 1207
Регистрация: 8.12.2008
Из: Russia, Moscow
Пользователь №: 446

Спасибо сказали: 229 раз(а)




Репутация:   34  


void QTreeWidgetItem::setData ( int column, int role, const QVariant & value ) [virtual]

В качестве role выставляешь Qt::ToolTipRole. В качестве value - текст подсказки.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Rocky
  опции профиля:
сообщение 4.3.2009, 23:04
Сообщение #3


Старейший участник
****

Группа: Участник
Сообщений: 530
Регистрация: 22.12.2008
Из: Санкт-Петербург
Пользователь №: 463

Спасибо сказали: 22 раз(а)




Репутация:   7  


Ахха... ясно... Только одно не понял... Это надо 2 раза дублировать само дерево чтоли? В смысле при создании дерева в new QTreeWidgetItem() писать текст, а потом сюда, так?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
SABROG
  опции профиля:
сообщение 4.3.2009, 23:08
Сообщение #4


Профессионал
*****

Группа: Участник
Сообщений: 1207
Регистрация: 8.12.2008
Из: Russia, Moscow
Пользователь №: 446

Спасибо сказали: 229 раз(а)




Репутация:   34  


Цитата(Rocky @ 4.3.2009, 23:04) *
Ахха... ясно... Только одно не понял... Это надо 2 раза дублировать само дерево чтоли? В смысле при создании дерева в new QTreeWidgetItem() писать текст, а потом сюда, так?

Да. Вот еще проще метод:

void QTreeWidgetItem::setToolTip ( int column, const QString & toolTip )


Сообщение отредактировал SABROG - 4.3.2009, 23:13
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 25.11.2024, 5:58