就一个mian.cpp文件,一个对话框一个按钮一个消息框
#include <QApplication>
#include <QDialog>
#include <QMessageBox>
#include <QPushButton>
#include <QGridLayout>
class a:public QDialog
{
Q_OBJECT
//如果这里将它注释掉就可以正常显示窗体界面,因为后来又加上了消息槽,人家说重新建文件然后把这个代码粘贴过去重新编译就可以了,我用其它代码试过,确实行~但在这个代码里却行不通了,不知道是这个的问题还是其它什么地方有语法错误,求大侠帮忙看看。求解
public:
a()
{
p=new QPushButton;
l=new QGridLayout(this);
p->setText("AnNiu");
l->addWidget(p,0,0);
connect(p,SIGNAL(clicked()),this,SLOT(dianji()));
}
public:
QGridLayout *l;
QPushButton *p;
private slots:
void dianji();
};
void a::dianji()
{
QMessageBox::about(0,"biaoti","neirong");
}
int main(int argc,char *argv[])
{
QApplication app(argc,argv);
a d;
d.show();
return app.exec();
}
*************************************这是我把上面那段做了点点修改*******************************#include <QApplication>
#include <QDialog>
#include <QMessageBox>
#include <QPushButton>
#include <QGridLayout>
class a:public QDialog
{
Q_OBJECT
public:
a()
{
p=new QPushButton;
l=new QGridLayout(this);
p->setText("AnNiu");
l->addWidget(p,0,0);
}
public:
QGridLayout *l;
QPushButton *p;
private slots:
void dianji();
};
void a::dianji()
{
QMessageBox::about(0,"biaoti","neirong");
}
int main(int argc,char *argv[])
{
QApplication app(argc,argv);
a d;
d.connect(d.p,SIGNAL(clicked()),d,SLOT(dianji())); //考虑是不是需要实例来执行connect这个函数,所以将它移到这里,结果还是提示错误,但是错误提示变化了点,还是不能编译,纠结了,麻烦各位叔叔阿姨大姐大哥小弟小妹了~~~在此跪谢~~
d.show();
return app.exec();
}