Qt教程
+ -

QObject::connect示例一

2024-05-08 5 0

QObject::connect用于建立信号发送与响应机制,即谁发出什么消息,谁响应。其实有点类似的消息回调函数。
我里我们建立一个示例。
重载QLabel类为我们的QMyLabel类,并为之提供一个响应按钮按下时的响应函数,该函数为QMyLabel类的成员函数。

 #include "mainwindow.h"

#include <QApplication>
#include <qlabel.h>
#include <windows.h>
#include <qpushbutton.h>

class QMyLabel:public QLabel
{
private:
    int index;
public:
    QMyLabel(const QString &text, QWidget *parent=nullptr, Qt::WindowFlags f=Qt::WindowFlags())
        :  QLabel(text,parent,f)
    {
        index = 0;
    }
    void OnButtonPush()
    {
        this->setNum(++index);
    }
};



int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    MainWindow w;

    QMyLabel* plabel = new QMyLabel("1234556",&w);
    plabel->move(200,0);

    QPushButton* btn = new QPushButton("my button",&w);
   btn->resize(100,50);

   QObject::connect(btn,&QPushButton::clicked,plabel,&QMyLabel::OnButtonPush);


    w.resize(400,200);
    w.show();

    return a.exec();
}

运行结果如下:
154538969387

0 篇笔记 写笔记

作者信息
我爱内核
Windows驱动开发,网站开发
好好学习,天天向上。
取消
感谢您的支持,我会继续努力的!
扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

您的支持,是我们前进的动力!