Página 1 de 1

InstallEventFilter ou Notify

Enviado: 01 Dez 2021 14:27
por dbsh
Nao estou conseguindo fazer filtro de evento usando InstallEventFilter, ou Notify, Alguem teria um exemplo.
pelo exemplo no site https://doc.qt.io/archives/qt-4.8/qobject.html#event
fiz a conversão para harbour mais não chama o evento

Código: Selecionar todos


class MainWindow : public QMainWindow
{
public:
    MainWindow();

protected:
    bool eventFilter(QObject *obj, QEvent *ev);

private:
    QTextEdit *textEdit;
};

MainWindow::MainWindow()
{
    textEdit = new QTextEdit;
    setCentralWidget(textEdit);

    textEdit->installEventFilter(this);
}

bool MainWindow::eventFilter(QObject *obj, QEvent *event)
{
    if (obj == textEdit) {
        if (event->type() == QEvent::KeyPress) {
            QKeyEvent *keyEvent = static_cast<QKeyEvent*>(event);
            qDebug() << "Ate key press" << keyEvent->key();
            return true;
        } else {
            return false;
        }
    } else {
        // pass the event on to the parent class
        return QMainWindow::eventFilter(obj, event);
    }
}