Название: отловить смену фокуса на форме внутри QGraphicsScene Отправлено: chu от Октябрь 07, 2011, 11:52 Есть форма, на ней размешены лэйблы, кнопки и lineEdit-ы.
С помощью addWidget() помещаю её в QGraphicsScene и отображаю с помощью QGraphicsView. Хочу отловить смену фокуса в этой форме, а точнее момент когда фокус передается lineEdit. Нащел как это делается для обычно размешенных виджетов: Код: connect(qApp, Название: Re: отловить смену фокуса на форме внутри QGraphicsScene Отправлено: thechicho от Октябрь 07, 2011, 12:01 попробуй qApp поменять на lineEdit (указатель) или &lineEdit(ссылка)
Название: Re: отловить смену фокуса на форме внутри QGraphicsScene Отправлено: chu от Октябрь 07, 2011, 12:28 попробуй qApp поменять на lineEdit (указатель) или &lineEdit(ссылка) Нет у QLineEdit сигналов которые высылаются при получении им фокусаНазвание: Re: отловить смену фокуса на форме внутри QGraphicsScene Отправлено: chu от Октябрь 07, 2011, 14:31 Попробовал переопределить mousePressEvent в виджете, помещаемом в QGraphicsScene
Код: void myWidget::mousePressEvent(QMouseEvent *event) Название: Re: отловить смену фокуса на форме внутри QGraphicsScene Отправлено: chu от Октябрь 12, 2011, 14:35 up
Название: Re: отловить смену фокуса на форме внутри QGraphicsScene Отправлено: twp от Октябрь 13, 2011, 10:36 есть
Код: void QWidget::focusInEvent ( QFocusEvent * event ) [virtual protected] Название: Re: отловить смену фокуса на форме внутри QGraphicsScene Отправлено: chu от Октябрь 14, 2011, 16:36 есть Переопределять - не вариант, в дизайнере потом не разместить нормально.Код: void QWidget::focusInEvent ( QFocusEvent * event ) [virtual protected] Повесил фильтры: Код: lineEdit->installEventFilter(this); Код: bool myDialog::eventFilter(QObject *target, QEvent *event) |