zl程序教程

您现在的位置是:首页 >  工具

当前栏目

Qt信号和槽入门介绍和使用

Qt入门 介绍 信号 使用
2023-09-14 09:13:38 时间

Qt中如何把发出动作的某个东西和动作本身连接起来,从而触发一个事件呢?
在这里插入图片描述
通过上图可得:Qt中通过connect函数来进行连接,从而触发一个事件
代码演示前,我们需要之前信号这个东西在帮助文档里面怎么找到,首先我们这里是创建一个按钮控件。实现点击按钮,关闭窗口,那么就应该去父类QPushButton类中找signal信号函数:
在这里插入图片描述
在这里插入图片描述
处理的槽函数:关闭当前窗口,当前窗口所属于的类是QWidget,因此去QWidget类里面找实现关闭功能的槽函数
在这里插入图片描述

下面通过代码演示:

    QPushButton* mybtn=new QPushButton("按下按钮,关闭当前窗口",this);
    resize(600,400);
    mybtn->resize(200,100);
    mybtn->move(250,300);
    // connect(发送信号者,发送的信号,信号接收者,处理的槽函数)
    //这里我们要执行点击按钮,关闭窗口的一个事件
    //发送信号者:按钮  发送的信号:点击  信号接受者:
    //connect函数里面传入的参数必须都是地址
    //clicked点击函数输入QPushButton类里面的函数,并且这里调用要传入函数的地址
    //信号接受者是当前按钮所处的父类窗口
    //处理的槽函数:关闭当前窗口,当前窗口所属于的类是QWidget,因此去QWidget类里面找实现关闭功能的槽函数
   // connect(mybtn,&QPushButton::clicked,this,&QWidget::close);
        //因此我们这里自定义的signal类的父类是QWidget,因此父类中的close槽函数也被继承了下来
    connect(mybtn,&QPushButton::clicked,this,&signal::close);

在这里插入图片描述
在这里插入图片描述