zoukankan      html  css  js  c++  java
  • 关于connect函数(Qt)

    QObject::connect函数,顾名思义,链接函数,作用是链接信号(signal)和槽(slot), 基本格式如下:

    QObject::connect(sender, signal, receiver, slot)

    当sender发出了signal(这种信号类似于广播,谁需要谁就建立相应的槽去接收)之后,会自动调用receiver 的slot函数。connect函数也是信号槽机制的体现。

    而QObject::connect( )这个函数有五种重载(overloaded)形式,下面给出来。

    QMetaObject::Connection connect(const QObject *, const char *,
                                    const QObject *, const char *,
                                    Qt::ConnectionType);
    
    QMetaObject::Connection connect(const QObject *, const QMetaMethod &,
                                    const QObject *, const QMetaMethod &,
                                    Qt::ConnectionType);
    
    QMetaObject::Connection connect(const QObject *, const char *,
                                    const char *,                      //receiver为this指针
                                    Qt::ConnectionType) const; 
    
    QMetaObject::Connection connect(const QObject *, PointerToMemberFunction,
                                    const QObject *, PointerToMemberFunction,  //指向成员函数的指针
                                    Qt::ConnectionType)
    
    QMetaObject::Connection connect(const QObject *, PointerToMemberFunction,  
                                    Functor);          //Functor可以接受static函数,全局函数,以及lambda表达式

    具体解释可以查看这个博客:https://www.devbean.net/2012/08/qt-study-road-2-signal-slot/

    另外加点容易遗漏的知识点:可以用父类的构造函数来初始化子类的一部分数据。比方说MainWindow(QWidget *parent):QMainWindow(parent){...}。

    原来人类的悲欢并不相通, 我只觉得他们吵闹。
  • 相关阅读:
    SpringMVC 返回 json 字符串中文乱码
    两个HTML页面之间传值
    NOIP2018 保卫王国
    Arch Linux使用cisco anyconnect
    CSP模拟赛 巨神兵
    计蒜客The Fake Fake Friends
    Manjaro安装,配置,美化指南
    [国家集训队] Crash 的文明世界
    ZJOI2011 营救皮卡丘
    CF1198E Rectangle Painting 2
  • 原文地址:https://www.cnblogs.com/zhlabcd/p/10848543.html
Copyright © 2011-2022 走看看