QT学习记录编译错误“no matching function for call toXXX“
初学QT,在尝试用connect手动关联一个按钮和QlineEdit的时候编译报错,如下:
然后贴上主要代码块:
-
//以下是mainwindow.h
-
-
-
-
-
-
QT_BEGIN_NAMESPACE
-
namespace Ui { class MainWindow; }
-
QT_END_NAMESPACE
-
-
class MainWindow : public QMainWindow
-
{
-
Q_OBJECT
-
-
public:
-
MainWindow(QWidget *parent = nullptr);
-
~MainWindow();
-
-
private:
-
Ui::MainWindow *ui;
-
-
public slots:
-
void self_pushButton_clicked();
-
};
-
-
//以下是mainwindow.cpp
-
-
#include "mainwindow.h"
-
#include "ui_mainwindow.h"
-
#include<QPushButton>
-
#include<QLineEdit>
-
MainWindow::MainWindow(QWidget *parent)
-
: QMainWindow(parent)
-
, ui(new Ui::MainWindow)
-
{
-
ui->setupUi(this);
-
ui->myline->setText("hello");
-
ui->mybtn->setText("clicked me");
-
connect(ui->mybtn,&QPushButton::clicked,ui->myline,&MainWindow::self_pushButton_clicked);
-
}
-
-
MainWindow::~MainWindow()
-
{
-
delete ui;
-
}
-
-
void MainWindow::self_pushButton_clicked()
-
{
-
ui->myline->setText("你好");
-
}
ui长这样:
上网查了查,这种错误叫重载不匹配(好像叫这个名),于是我找了半天没找到哪里不匹配,期间去问了某个大佬学长结果学长也没看出来,总之经过两天的折磨之后被迫重新从自定义信号和槽去学,才注意到这样的一条规则
connect(发送信号的类,&信号函数,接收信号的类,&槽函数);[QT5]
期中信号函数一般是发送信号类的成员函数,而槽函数一般是接收信号的类的成员函数;(槽函数也可以是全局函数)
再来看原来程序里的connect:
connect(ui>mybtn,&QPushButton::clicked,ui>myline,&MainWindow::self_pushButton_clicked);
这里myline是ui里引入的一个QlineEdit类。
所以问题就很明白了!
因为self_pushButton_clicked()不是QlineEdit的成员函数,所以自然是不匹配的,它是MainWindow的成员函数,所以这句话的正确表述是:
connect(ui>mybtn,&QPushButton::clicked,this,&MainWindow::self_pushButton_clicked);
没错这个S*B错误困扰了我两天充分证明了我也是S*B
以上
(小白第一次发博客,写的不对还请包容指出,谢谢)
这篇好文章是转载于:学新通技术网
- 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
- 本站站名: 学新通技术网
- 本文地址: /boutique/detail/tanhgbkbjh
系列文章
更多
同类精品
更多
-
photoshop保存的图片太大微信发不了怎么办
PHP中文网 06-15 -
Android 11 保存文件到外部存储,并分享文件
Luke 10-12 -
《学习通》视频自动暂停处理方法
HelloWorld317 07-05 -
word里面弄一个表格后上面的标题会跑到下面怎么办
PHP中文网 06-20 -
photoshop扩展功能面板显示灰色怎么办
PHP中文网 06-14 -
微信公众号没有声音提示怎么办
PHP中文网 03-31 -
excel下划线不显示怎么办
PHP中文网 06-23 -
excel打印预览压线压字怎么办
PHP中文网 06-22 -
怎样阻止微信小程序自动打开
PHP中文网 06-13 -
TikTok加速器哪个好免费的TK加速器推荐
TK小达人 10-01