标题:Qt Designer 的一个问题!谢谢!
作者:wwq1105
日期:2007-01-19 14:27
内容:
下面这个简单的程序,就是在QT中显示 .UI 文件 。以前我曾经编译成功了,但是不知道后来我改动了什么,就出现了错误,我怎么都找不到错,请求帮忙!
qtDesigner 做出 imagedialog.ui 文件
====================
我建立了一个.h文件image.h 如下
=====================
#include "ui_imagedialog.h"
class ImageDialog : public QDialog
{
Q_OBJECT
public:
ImageDialog(QWidget *parent = 0);
private:
Ui::ImageDialog ui;
}
======================
建立image.cpp 如下
======================
#include "image.h"
ImageDialog::ImageDialog(QWidget *parent): QDialog(parent)
{
ui.setupUi(this);
}
====================
main.cpp如下
==================
#include "image.h"
#include
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
ImageDialog * window=new ImageDialog;
window->show();
return app.exec();
}
================
编译后出现如下错误:
image.cpp:2: error: new types may not be defined in a return type
image.cpp:2: error: return type specification for constructor invalid
==================
不清楚为什么啊!请教!
====================
编译生成的ui_imagedialog.h文件结构如下:
#ifndef UI_IMAGEDIALOG_H
#define UI_IMAGEDIALOG_H
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
class Ui_ImageDialog
{
public:
QVBoxLayout *vboxLayout;
QHBoxLayout *hboxLayout;
QGroupBox *groupBox;
QVBoxLayout *vboxLayout1;
QVBoxLayout *vboxLayout2;
QCheckBox *checkBox_1;
QCheckBox *checkBox_2;
Q ..
#1 [wwq1105 01-19 14:54]
问题找到了,但是不知具体原因;
问题是:在image.h文件中最后少了一个 ";"号
加上就正确了。 谁能告诉我为什么,感觉这个不要也可以的啊!
#include "ui_imagedialog.h"
class ImageDialog : public QDialog
{
Q_OBJECT
public:
ImageDialog(QWidget *parent = 0);
private:
Ui::ImageDialog ui;
};
#2 [XChinux 01-22 00:06]
当然有必要了,语法问题。
C++里,类的定义后面要有分号的。