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中的组件提升为就可以了
添加点击事件成功
    The future's not set,there is no fate but what we make for ourselves.
 
                    
                     
                    
                 
                    
                
 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号