1 创建一个关闭按钮
connect函数的最常用的一般形式:
connect(sender,signal,receiver,slot);
sender:发出信号的对象
siganl:发送对象发出的信号
receiver:接受信号的对象
slot:接收对象在接受到信号后所需要调用的函数(槽函数)
Widget::Widget(QWidget *parent)
: QWidget(parent)
{
//创建一个按钮 点击关闭按钮
//this->close();
QPushButton *p = new QPushButton("关闭窗口",this);
//设置点击按钮,会调用窗口的close函数
connect(p,&QPushButton::clicked,this,&QWidget::close);
}
其中的close使用的是this这个接受类下的槽函数。
2 按钮常用的信号
常用的信号可以在帮助文档中查看到。QPushButton的帮助文档中并无Signal选项,但是在QPushButton继承的类中,会出现QAbstractButton这个选项,里面是有Signals的。
3 自定义的槽函数
.cpp文件中:
#include "widget.h"
#include <QDebug>
Widget::Widget(QWidget *parent) : QWidget(parent)
{
button = new QPushButton;
button->setParent(this);
button->setText("打印呵呵");
//注册信号与槽的链接
//槽函数可以使普通的成员函数,还可以是槽函数
//注意:如果信号没有参数,那么槽函数也不能有参数,如果信号有参数,
// 那么槽函数中可以有参数也可以没有
connect(button,&QPushButton::clicked,this,&Widget::print);
}