1

サブクラス化して、マウスのコーサーがウィジェットの上にあるときと離れたときに通知されるように、QLineEditいくつかの信号を追加したいと思います。以下のように書くことができました。mouseEnter()mouseExit()mouseEnter()

class MyLineEdit:public QLineEdit{
//
// ..
//
protected: 
    void mouseMoveEvent(QMouseEvent *e);

signals:
    void mouseEnter();
}

void MyLineEdit::mouseMoveEvent(QMouseEvent *e)
{
    emit mouseEnter();
    QLineEdit::mouseMoveEvent(e);
}

正しく動作します。どのように書くことができますmouseExit()か?

4

1 に答える 1

2

leaveEvent はあまり良い名前ではありません。

#include <QtGui>
#include <QEvent>

class Editor : public QLineEdit
{
    Q_OBJECT

public:
    void leaveEvent(QEvent *);

signals:
    void mouseLeave();
};

void Editor::leaveEvent(QEvent *e);
{
    qDebug() << "Mouse has left the building..";
    emit mouseLeave();
}
于 2013-03-16T11:10:23.213 に答える