用qtcreate 创建一个qt widget项目。程序包括dlg.h dlg.cpp main.cpp 和一个dlg.ui
我在dlg.ui里面添加一个button 叫做objectName 设置成okbutton
dlg.cpp 文件如下
#include "dlg.h"
#include "ui_dlg.h"
dlg::dlg(QWidget *parent) :
QWidget(parent),
ui(new Ui::dlg)
{
ui->setupUi(this);
connect(okbutton,SIGNAL(clicked()),this,SLOT(accept()));
}
dlg::~dlg()
{
delete ui;
}
添加。connect这句花就会提示 okbutton变量没有声明
/home/work/test/test/dlg.cpp:9: error: 'okbutton' was not declared in this scope
同样的程序。我用qtdesige qmake -project 就可以。
------解决方案--------------------
我不相信: "同样的程序。我用qtdesige qmake -project 就可以。"
题外:根据你的代码,其他人看不出来你到底有没有 okbutton 这个变量,因为你没有给出类的定义。但一般来说,你这儿应该是 ui->okbutton