[gelöst] eventFilter auf QDoubleSpinBox
Verfasst: 12. April 2007 10:38
Moin,
folgendes Problem: Ich will in einem Dialog Mausklicks auf eine QDoubleSpinBox abfangen. Dazu in meinem Dialog folgender Code:
Verhalten des Programms: Es werden nur die Klicks abgefangen, die auf die Pfeil oben/ Pfeil unten - Widgets gehen, die Klicks auf das QLineEdit bleiben unbehandelt. Gerade auf die bin ich aber scharf
Irgendwer ne Idee?
Viele Grüße,
Flachkoepper
folgendes Problem: Ich will in einem Dialog Mausklicks auf eine QDoubleSpinBox abfangen. Dazu in meinem Dialog folgender Code:
Code: Alles auswählen
MyDlg::MyDlg() {
...
myDoubleSpinBox->installEventFilter(this);
...
}
Code: Alles auswählen
bool MyDlg::eventFilter(QObject *obj, QEvent *ev)
{
if(QString::compare(obj->metaObject()->className(),"QDoubleSpinBox") == 0 ) {
if( ev->type() == QEvent::MouseButtonPress ) {
QMouseEvent* me = static_cast<QMouseEvent*>(ev);
if( me->button() == Qt::LeftButton)
qDebug() << "links";
if( me->button() == Qt::RightButton)
qDebug() << "rechts";
return QObject::eventFilter(obj,ev);
} else {
return false;
}
} else {
// pass the event on to the parent class
return QObject::eventFilter(obj, ev);
}
}Irgendwer ne Idee?
Viele Grüße,
Flachkoepper