QLineEdit mouseEnter()和mouseExit()事件

时间:2013-03-16 10:58:39

标签: qt qlineedit

我希望将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()

1 个答案:

答案 0 :(得分:1)

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();
}