crossplatform.ru

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

> Как отловить наведение мышки на item QListWidget'a?
RazrFalcon
  опции профиля:
сообщение 4.8.2011, 5:15
Сообщение #1


Zombie Mod
*****

Группа: Участник
Сообщений: 1654
Регистрация: 24.5.2010
Из: Харьков
Пользователь №: 1752

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




Репутация:   212  


Нужно отловить сигнал, который бы испускался при наведении мыши на итем листа.

Нашел только:
itemEntered(QListWidgetItem*)

Пробовал так:
//конструктор
{
...
listWidget->viewport()->setMouseTracking(true);
connect(listWidget,SIGNAL(itemEntered(QListWidgetItem*)),this,SLOT(itemEntered(QListWidgetItem*)));
...
}

void MainWindow::itemEntered(QListWidgetItem* index)
{
  qDebug()<<listWidget->row(index);
}

Ничего. Срабатывает только при скролинге колесиком мыши.

Так же пробовал mouseMoveEvent() у итемов, но я не пойму как понять что мышка вышла за пределы итема.

То есть мне нужен сигнал на наведение мышкой на итем, затем, когда мы мышку убрали, появляется новый сигнал, мол убрали.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
 
Начать новую тему
Ответов
Алексей1153
  опции профиля:
сообщение 4.8.2011, 18:16
Сообщение #2


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

Группа: Участник
Сообщений: 2941
Регистрация: 19.6.2010
Из: Обливион
Пользователь №: 1822

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




Репутация:   34  


Цитата
предопределил

ПЕРЕопределил :)

насчёт mouseMoveEvent - у меня нет на ноуте сейчас Qt, не могу попробовать.

А зачем, кстати, делаешь e->accept() ? Вроде надо функцию родителя вызывать

void MyListWidget::mouseMoveEvent(QMouseEvent *e)
{
  QListWidget::QListWidget(e);
  qDebug()<<e->pos();
}


Сообщение отредактировал Алексей1153 - 4.8.2011, 18:18
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Сообщений в этой теме


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


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




RSS Текстовая версия Сейчас: 22.12.2024, 7:04