第一种方法:(不推荐)
首先我们添加一个按钮,objectName要记住。接着进行下述操作。
声明槽函数并进行定义。
第一种已经完成,`ui->pushButton`: 信号发出者,表示界面上的按钮对象。
`SIGNAL(clicked(bool))`: 发出的信号,表示按钮被点击。
`this`: 信号接收者,表示当前对象。
`SLOT(pushButton1())`: 接收信号后调用的槽函数,表示调用当前对象的 `pushButton1()` 成员函数。
运行之后点击效果如下:
第二种方法:(常用)
将connect的代码替换为下面代码:
connect(ui->pushButton,&QPushButton::clicked,this,&MainWindow::pushButton1);
运行效果一样。
第三种方法:
替换为如下代码,然后不需要按前面的操作声明和定义槽函数,直接lambda定义。
connect(ui->pushButton,&QPushButton::clicked,[=]{
QMessageBox::information(this,u8"title",u8"clicked");
});
第四种方法:
点击第二个按钮进行槽函数编辑。
拖地然后进行添加,点击clicked(),点击编辑,然后点击如下:
这边直接默认slot1进行操作。
完成后如下图:
然后去声明和定义该槽函数。
这样子也就可以实现了。
第五种方法:
把按钮的objectName,声明为void on_objectName_clicked();然后进行定义便能达到效果。