Название: QTextEdit и Whell event Отправлено: ecspertiza от Октябрь 14, 2010, 16:21 Есть QScrollArea в ней несколько QTextEdit, стало быть если прокручиваю колесиком находясь мышкой на QTextEdit то QScrollArea не прокручивается. Как реализовать передачу события QScrollArea как это происходит если бы внутри находился обычный виджет?
Название: Re: QTextEdit и Whell event Отправлено: marbius от Октябрь 14, 2010, 19:37 Нужно наследовать класс от QTextEdit, в котором переопределить wheelEvent (QWheelEvent e), а из своего класса транслировать событие в QScrollArea. В общем, как-то так:
MyTextEdit.h Код
MyTextEdit.cpp Код
и добавление в QScrollArea как-то так: Код
Название: Re: QTextEdit и Whell event Отправлено: ecspertiza от Октябрь 14, 2010, 20:38 Нашел вариант попроще, нужно QTextArea установить эвент фильтр
QTextArea::viewport()->installEventFilter(); а в процедуре обработки фильтра написать bool eventFilter(QObject *o, QEvent *e) { if (o == QTextArea::viewport() && e->type() == QEvent::Wheel) { e->ignore(); return true; } return false; } Название: Re: QTextEdit и Whell event Отправлено: marbius от Октябрь 15, 2010, 18:17 Нашел вариант попроще.... Спасибо, приму к сведению, а то я уже "помешался" на наследованиях ;-) |