Qt之重寫QLabel類


在mylabel.h 文件中
#ifndef MYLABEL_H
#define MYLABEL_H

#include <QLabel>
/*重新實現QLabel類,使其支持點擊事件*/
class MyLabel : public QLabel
{
Q_OBJECT
public:
explicit MyLabel(QWidget *parent = 0);

protected:
virtual void mouseReleaseEvent(QMouseEvent *ev);
signals:
void clicked();
public slots:

};

#endif // MYLABEL_H
在mylabel.h文件中
#include "mylabel.h"

MyLabel::MyLabel(QWidget *parent) :
QLabel(parent)
{
}
void MyLabel::mouseReleaseEvent(QMouseEvent *ev)
{
Q_UNUSED(ev);
emit clicked();
}
再講Qt designer中的組件提升為就可以了
添加點擊事件成功


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM