crossplatform.ru

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

 
Ответить в данную темуНачать новую тему
> Как настроить задержку для высплывающей подсказки?
AntonH851
  опции профиля:
сообщение 19.3.2010, 11:49
Сообщение #1


Студент
*

Группа: Участник
Сообщений: 66
Регистрация: 20.2.2010
Из: Шебекино
Пользователь №: 1475

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




Репутация:   0  


Здравствуйте!

Очень нужно настроить задержку высплывающей подсказки для QTableView ну или для всего приложения.
Есть способ сделать это?

А еще интересно, можно ли задать время через которое бы она автоматически исчезала?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
kwisp
  опции профиля:
сообщение 19.3.2010, 15:11
Сообщение #2


астарожна ынтжинэр
*****

Группа: Участник
Сообщений: 1404
Регистрация: 26.11.2008
Из: ТаганрогРодинаЧехова
Пользователь №: 435

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




Репутация:   23  


почему бы не воспользоваться статическими функциями
Цитата
QFont font ()
void hideText ()
bool isVisible ()
QPalette palette ()
void setFont ( const QFont & font )
void setPalette ( const QPalette & palette )
void showText ( const QPoint & pos, const QString & text, QWidget * w, const QRect & rect )
void showText ( const QPoint & pos, const QString & text, QWidget * w = 0 )
QString text ()

Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
AntonH851
  опции профиля:
сообщение 19.3.2010, 16:11
Сообщение #3


Студент
*

Группа: Участник
Сообщений: 66
Регистрация: 20.2.2010
Из: Шебекино
Пользователь №: 1475

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




Репутация:   0  


Цитата(kwisp @ 19.3.2010, 15:11) *
почему бы не воспользоваться статическими функциями
Цитата
QFont font ()
void hideText ()
bool isVisible ()
QPalette palette ()
void setFont ( const QFont & font )
void setPalette ( const QPalette & palette )
void showText ( const QPoint & pos, const QString & text, QWidget * w, const QRect & rect )
void showText ( const QPoint & pos, const QString & text, QWidget * w = 0 )
QString text ()



Не очень понятно как это можно применить....
у меня QTableView и QSqlQueryModel
пробую в методе event представления отлавливать событие ToolTip, а оно возникает только для загаловка таблицы почемуто
. Для модели видимо ввообще не генерируется...
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
BRE
  опции профиля:
сообщение 19.3.2010, 16:29
Сообщение #4


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

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

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




Репутация:   44  


Цитата(AntonH851 @ 19.3.2010, 16:11) *
Для модели видимо ввообще не генерируется...

Что бы модель посылала этот сигнал, нужно в ней обрабатывать Qt::ToolTipRole.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
AntonH851
  опции профиля:
сообщение 19.3.2010, 16:40
Сообщение #5


Студент
*

Группа: Участник
Сообщений: 66
Регистрация: 20.2.2010
Из: Шебекино
Пользователь №: 1475

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




Репутация:   0  


Цитата(BRE @ 19.3.2010, 16:29) *
Цитата(AntonH851 @ 19.3.2010, 16:11) *
Для модели видимо ввообще не генерируется...

Что бы модель посылала этот сигнал, нужно в ней обрабатывать Qt::ToolTipRole.


Это имеется ввиду в методе Data()?
я там написал обработчик

if (role == Qt::ToolTipRole) {
        QString tip, key, value;
        tip = "<table width=300>";
        ...
                tip += "</table>";
        return tip;


подсказки появляются... вот только мне нужно чтобы они чуть дольше появлялись и сами прятались через 5 секунд....
вот это никак не пойму как сделать...
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
BRE
  опции профиля:
сообщение 19.3.2010, 16:55
Сообщение #6


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

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

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




Репутация:   44  


Цитата(AntonH851 @ 19.3.2010, 16:40) *
вот это никак не пойму как сделать...

Насколько я помню, у QToolTip жестко заложено поведение (время появления, события исчезновения и т.д.).
Можно попробовать сделать свой ToolTip на основе QLabel.
Можно посмотреть исходники Qt: реализацию QToolTip. Там вроде все просто.

Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

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


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




RSS Текстовая версия Сейчас: 30.11.2024, 6:02