crossplatform.ru

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


  Ответ в QTableWidget - мышиные события
Введите ваше имя
Подтвердите код

Введите в поле код из 6 символов, отображенных в виде изображения. Если вы не можете прочитать код с изображения, нажмите на изображение для генерации нового кода.
 

Опции сообщения
 Включить смайлы?
Иконки сообщения
(Опционально)
                                
                                
  [ Без иконки ]
 


Последние 10 сообщений [ в обратном порядке ]
flankerr Дата 21.2.2011, 13:25
 
Цитата(abc @ 18.2.2011, 22:00) *
установи фильтр не на tablewidget, а на tablewidget->viewport это у меня работало на tableview, разницы, наверное, нет

Плин, ларчик то просто открывался - про вьюпорт не подумал.
abc Дата 18.2.2011, 22:00
  установи фильтр не на tablewidget, а на tablewidget->viewport
это у меня работало на tableview, разницы, наверное, нет
kwisp Дата 18.2.2011, 17:09
 
Цитата(flankerr @ 18.2.2011, 16:52) *
но тут не получается отловить тот же

QEvent::MouseButtonPress

код покажи
flankerr Дата 18.2.2011, 16:52
 
Цитата(kwisp @ 18.2.2011, 15:24) *
Цитата
Mouse move events will occur only when a mouse button is pressed down, unless mouse tracking has been enabled with QWidget::setMouseTracking().
Цитата(flankerr @ 18.2.2011, 15:04) *
при это понять от какой кнопки это клик нельзя

а как ты определяешь?

что даёт setMouseTracking() пока не понял...

В том то и вопрос что ни как. А как можно то ???
//Signals :
void cellActivated ( int row, int column )
void cellChanged ( int row, int column )
void cellClicked ( int row, int column )
void cellDoubleClicked ( int row, int column )
void cellEntered ( int row, int column )
void cellPressed ( int row, int column )
void itemActivated ( QTableWidgetItem * item )
void itemChanged ( QTableWidgetItem * item )
void itemClicked ( QTableWidgetItem * item )
void itemDoubleClicked ( QTableWidgetItem * item )
void itemEntered ( QTableWidgetItem * item )
void itemPressed ( QTableWidgetItem * item )

нет тут инфы о мыше.

Можно поставить
eventFilter(QObject *obj, QEvent *event)
но тут не получается отловить тот же
QEvent::MouseButtonPress


Цитата
Цитата(flankerr @ 18.2.2011, 15:04) *
Унаследовать свой класс и переопределить обработчик сообщений не могу т.к. см выше создано всё через дизайнер - так что вариант отпадает.
не факт.
в дизайнер можно свои изменённые виджеты добавлять.

Свои виджеты добавить можно на постояной основе - т.е. они будут свититься как все остальные это оправдано если у тебя есть компонент который используется постоянно а если это разово то нет смысла.
kwisp Дата 18.2.2011, 15:24
 
Цитата
Mouse move events will occur only when a mouse button is pressed down, unless mouse tracking has been enabled with QWidget::setMouseTracking().
Цитата(flankerr @ 18.2.2011, 15:04) *
при это понять от какой кнопки это клик нельзя

а как ты определяешь?

Цитата(flankerr @ 18.2.2011, 15:04) *
Унаследовать свой класс и переопределить обработчик сообщений не могу т.к. см выше создано всё через дизайнер - так что вариант отпадает.

не факт.
в дизайнер можно свои изменённые виджеты добавлять.
flankerr Дата 18.2.2011, 15:04
  Есть форма созданная в дизайнере. В дизейнере на форму кинут QTableWidget.
Надо отлавливать мышинные события. Вопрос как ?

Сигналов мышиных нет - елси только "клики" при это понять от какой кнопки это клик нельзя. ЭвентФильтр сообщений мышки тоже не ловит.
Унаследовать свой класс и переопределить обработчик сообщений не могу т.к. см выше создано всё через дизайнер - так что вариант отпадает.

Кто подскажет ? :rolleyes:
Просмотр темы полностью (откроется в новом окне)
RSS Текстовая версия Сейчас: 30.4.2024, 20:59