zoukankan      html  css  js  c++  java
  • [Qt] Qt信号槽

    信号槽是Qt的核心机制之一,信号槽简单的来说就是两个对象及两个对象问答行为。

    例如:发送者(Sender)发出信号(SIGNAL)、接收者(Receiver)做出反应(SLOT)。利用connect函数将这两个对象及其行为联系起来。

    一个简单的例子如下,创建一个button,Clicked button make app quit.

    #include <QApplication>
    #include <QPushbutton>
    
    int main(int argc, char* argv[])
    {
        QApplication a(argc, argv);
    
        // Create a button.
        QPushButton button("QUIT");
    
        // Connect signal and slot
        QObject::connect(&button, &QPushButton::clicked, &QApplication::quit);
    
        // Show button in the screen.
        button.show();
    
        return a.exec();
    }

    connect函数的一般形式为:

    connect(sender, signal, receiver, slot);

    当sender发出signal信号后,receiver的slot函数会自动调用。

    其中sender和receiver没有区别,都是QObject指针,主要区别在于signal和slot

    signal和slot要求参数类型一致,如果不一致,则允许slot的参数比signal少,但是存在的参数必须对应一致。

  • 相关阅读:
    <转>css选择器基本语法
    Pycharm错误提示
    Python继承Selenium2Library
    对于框架设计的一点总结
    <转>自动化框架设计思想
    svn检出项目报错
    eclipse查看jar包源文件
    plsql连接远程数据库快捷方式
    plsql过期注册
    hql语句cast用法
  • 原文地址:https://www.cnblogs.com/immjc/p/7834657.html
Copyright © 2011-2022 走看看