利用Qt信号槽机制,按钮改变窗口title名字出错

#include "mainwidget.h"

#include<QPushButton>
mainwidget::mainwidget(QWidget *parent)
    : QWidget(parent)
{
    //初始化按钮
    b1 = new QPushButton("change title",this);
    b1->move(100,100);
 
    b2 = new QPushButton("close",this);
    b2->move(200,200);
 
    this->setFixedSize(400,400);
    this->setWindowTitle("congratolation");
    this->setWindowIcon(QIcon("C:\\Users\\Point\\Desktop\\timg.jpg"));
 
  connect(b2,&QPushButton::clicked,this,&mainwidget::close);
  connect(b1,&QPushButton::clicked,this,&mainwidget::setWindowTitle("diffrent");
 }
 
mainwidget::~mainwidget()
{
}

 

 

b1按钮提示错误:

C:\Users\Point\signalandslot\mainwidget.cpp:18: error: lvalue required as unary '&' operand
   connect(b1,&QPushButton::clicked,this,&mainwidget::setWindowTitle("diffrent");

 

问题出现,是不是因为click为布尔值,widget的titlename是string,就不能连接上?所以如果要改成按钮
                                                                               ^

你好,我是有问必答小助手。为了技术专家团更好地为您解答问题,烦请您补充下(1)问题背景详情,(2)您想解决的具体问题,(3)问题相关代码图片或者报错信息。便于技术专家团更好地理解问题,并给出解决方案。

您可以点击问题下方的【编辑】,进行补充修改问题。

你这个connect函数写错了,请检查一下connect方法的模板!望采纳!

你这个connect函数写错了,请检查一下connect方法的模板!望采纳!