Die Definitionen der setupUI-Funktion befindet sich in der Datei ui_MainDialog.h.
hier nochmal der Quelltext (ui_MainDialog.h):
/********************************************************************************
** Form generated from reading UI file 'MainDialog.ui'
**
** Created: Sun May 30 16:50:51 2010
** by: Qt User Interface Compiler version 4.6.2
**
** WARNING! All changes made in this file will be lost when recompiling UI file!
********************************************************************************/
#ifndef UI_MAINDIALOG_H
#define UI_MAINDIALOG_H
#include <QtCore/QVariant>
#include <QtGui/QAction>
#include <QtGui/QApplication>
#include <QtGui/QButtonGroup>
#include <QtGui/QHBoxLayout>
#include <QtGui/QHeaderView>
#include <QtGui/QLineEdit>
#include <QtGui/QListWidget>
#include <QtGui/QMainWindow>
#include <QtGui/QMenu>
#include <QtGui/QMenuBar>
#include <QtGui/QPushButton>
#include <QtGui/QRadioButton>
#include <QtGui/QStatusBar>
#include <QtGui/QVBoxLayout>
#include <QtGui/QWidget>
QT_BEGIN_NAMESPACE
class Ui_MainWindow
{
public:
QAction *actionEinstellungen;
QAction *actionEinstellungen_2;
QAction *actionBeenden;
QAction *actionBeenden_2;
QAction *action_ber;
QWidget *centralwidget;
QListWidget *listWidget;
QPushButton *settingsButton;
QWidget *widget;
QHBoxLayout *horizontalLayout;
QVBoxLayout *verticalLayout;
QRadioButton *searchRadioButton;
QRadioButton *filterRadioButton;
QRadioButton *updateRadioButton;
QVBoxLayout *verticalLayout_2;
QLineEdit *lineEdit;
QLineEdit *lineEdit_2;
QWidget *widget1;
QHBoxLayout *horizontalLayout_2;
QPushButton *cancelButton;
QPushButton *updateButton;
QStatusBar *statusbar;
QMenuBar *menuBar;
QMenu *menuDatei;
QMenu *menuHilfe;
void setupUi(QMainWindow *MainWindow)
{
if (MainWindow->objectName().isEmpty())
MainWindow->setObjectName(QString::fromUtf8("MainWindow"));
MainWindow->resize(674, 505);
actionEinstellungen = new QAction(MainWindow);
actionEinstellungen->setObjectName(QString::fromUtf8("actionEinstellungen"));
actionEinstellungen_2 = new QAction(MainWindow);
actionEinstellungen_2->setObjectName(QString::fromUtf8("actionEinstellungen_2"));
actionBeenden = new QAction(MainWindow);
actionBeenden->setObjectName(QString::fromUtf8("actionBeenden"));
actionBeenden_2 = new QAction(MainWindow);
actionBeenden_2->setObjectName(QString::fromUtf8("actionBeenden_2"));
action_ber = new QAction(MainWindow);
action_ber->setObjectName(QString::fromUtf8("action_ber"));
centralwidget = new QWidget(MainWindow);
centralwidget->setObjectName(QString::fromUtf8("centralwidget"));
listWidget = new QListWidget(centralwidget);
listWidget->setObjectName(QString::fromUtf8("listWidget"));
listWidget->setGeometry(QRect(300, 60, 371, 311));
settingsButton = new QPushButton(centralwidget);
settingsButton->setObjectName(QString::fromUtf8("settingsButton"));
settingsButton->setGeometry(QRect(100, 230, 129, 24));
widget = new QWidget(centralwidget);
widget->setObjectName(QString::fromUtf8("widget"));
widget->setGeometry(QRect(10, 80, 263, 75));
horizontalLayout = new QHBoxLayout(widget);
horizontalLayout->setObjectName(QString::fromUtf8("horizontalLayout"));
horizontalLayout->setContentsMargins(0, 0, 0, 0);
verticalLayout = new QVBoxLayout();
verticalLayout->setObjectName(QString::fromUtf8("verticalLayout"));
searchRadioButton = new QRadioButton(widget);
searchRadioButton->setObjectName(QString::fromUtf8("searchRadioButton"));
verticalLayout->addWidget(searchRadioButton);
filterRadioButton = new QRadioButton(widget);
filterRadioButton->setObjectName(QString::fromUtf8("filterRadioButton"));
verticalLayout->addWidget(filterRadioButton);
updateRadioButton = new QRadioButton(widget);
updateRadioButton->setObjectName(QString::fromUtf8("updateRadioButton"));
verticalLayout->addWidget(updateRadioButton);
horizontalLayout->addLayout(verticalLayout);
verticalLayout_2 = new QVBoxLayout();
verticalLayout_2->setObjectName(QString::fromUtf8("verticalLayout_2"));
lineEdit = new QLineEdit(widget);
lineEdit->setObjectName(QString::fromUtf8("lineEdit"));
verticalLayout_2->addWidget(lineEdit);
lineEdit_2 = new QLineEdit(widget);
lineEdit_2->setObjectName(QString::fromUtf8("lineEdit_2"));
verticalLayout_2->addWidget(lineEdit_2);
horizontalLayout->addLayout(verticalLayout_2);
widget1 = new QWidget(centralwidget);
widget1->setObjectName(QString::fromUtf8("widget1"));
widget1->setGeometry(QRect(301, 391, 219, 26));
horizontalLayout_2 = new QHBoxLayout(widget1);
horizontalLayout_2->setObjectName(QString::fromUtf8("horizontalLayout_2"));
horizontalLayout_2->setContentsMargins(0, 0, 0, 0);
cancelButton = new QPushButton(widget1);
cancelButton->setObjectName(QString::fromUtf8("cancelButton"));
horizontalLayout_2->addWidget(cancelButton);
updateButton = new QPushButton(widget1);
updateButton->setObjectName(QString::fromUtf8("updateButton"));
horizontalLayout_2->addWidget(updateButton);
MainWindow->setCentralWidget(centralwidget);
statusbar = new QStatusBar(MainWindow);
statusbar->setObjectName(QString::fromUtf8("statusbar"));
MainWindow->setStatusBar(statusbar);
menuBar = new QMenuBar(MainWindow);
menuBar->setObjectName(QString::fromUtf8("menuBar"));
menuBar->setGeometry(QRect(0, 0, 674, 21));
menuDatei = new QMenu(menuBar);
menuDatei->setObjectName(QString::fromUtf8("menuDatei"));
menuHilfe = new QMenu(menuBar);
menuHilfe->setObjectName(QString::fromUtf8("menuHilfe"));
MainWindow->setMenuBar(menuBar);
menuBar->addAction(menuDatei->menuAction());
menuBar->addAction(menuHilfe->menuAction());
menuDatei->addAction(actionEinstellungen_2);
menuDatei->addSeparator();
menuDatei->addAction(actionBeenden_2);
menuHilfe->addAction(action_ber);
retranslateUi(MainWindow);
QMetaObject::connectSlotsByName(MainWindow);
} // setupUi
void retranslateUi(QMainWindow *MainWindow)
{
MainWindow->setWindowTitle(QApplication::translate("MainWindow", "MainWindow", 0, QApplication::UnicodeUTF8));
actionEinstellungen->setText(QApplication::translate("MainWindow", "Einstellungen...", 0, QApplication::UnicodeUTF8));
actionEinstellungen_2->setText(QApplication::translate("MainWindow", "Einstellungen...", 0, QApplication::UnicodeUTF8));
actionBeenden->setText(QApplication::translate("MainWindow", "Beenden", 0, QApplication::UnicodeUTF8));
actionBeenden_2->setText(QApplication::translate("MainWindow", "Beenden", 0, QApplication::UnicodeUTF8));
action_ber->setText(QApplication::translate("MainWindow", "\303\234ber...", 0, QApplication::UnicodeUTF8));
settingsButton->setText(QApplication::translate("MainWindow", "Einstellungen...", 0, QApplication::UnicodeUTF8));
searchRadioButton->setText(QApplication::translate("MainWindow", "Paket", 0, QApplication::UnicodeUTF8));
filterRadioButton->setText(QApplication::translate("MainWindow", "Paketgruppe", 0, QApplication::UnicodeUTF8));
updateRadioButton->setText(QApplication::translate("MainWindow", "Alles Aktualisieren", 0, QApplication::UnicodeUTF8));
cancelButton->setText(QApplication::translate("MainWindow", "Abbrechen", 0, QApplication::UnicodeUTF8));
updateButton->setText(QApplication::translate("MainWindow", "Aktualisieren", 0, QApplication::UnicodeUTF8));
menuDatei->setTitle(QApplication::translate("MainWindow", "Datei", 0, QApplication::UnicodeUTF8));
menuHilfe->setTitle(QApplication::translate("MainWindow", "Hilfe", 0, QApplication::UnicodeUTF8));
} // retranslateUi
};
namespace Ui {
class MainWindow: public Ui_MainWindow {};
} // namespace Ui
QT_END_NAMESPACE
#endif // UI_MAINDIALOG_H
Diese Datei ruf ich ja in der Datei mainwindow.h auf, welche jetzt so aussieht:
#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include "ui_MainDialog.h"
#include <QtGui/QMainWindow>
class mainWindow: public QMainWindow
{
Q_OBJECT
public:
mainWindow(QWidget *parent = 0);
virtual ~mainWindow();
private:
Ui::MainWindow *ui;
};
#endif // MAINWINDOW_H
Dann nochmal die mainwindow.cpp:
#include "mainwindow.h"
mainWindow::mainWindow(QWidget *parent = 0)
: QMainWindow(parent), ui(new Ui::MainWindow)
{
ui->setupUi(this);
}
mainWindow::~mainWindow()
{
delete ui;
}
zum Schluss nochmal die main.cpp:
#include <QApplication>
#include "mainwindow.h"
int main(int argc, char** argv)
{
QApplication app(argc, argv);
mainWindow *window = new mainWindow;
window->show();
return app.exec();
}
So, wenn ich in der mainwindow.cpp parent = 0 setze erhalte ich folgende Fehlermeldung: "/home/meinName/projects/Paketmanager/mainwindow.cpp:3: error: default argument given for parameter 1 of ‘mainWindow::mainWindow(QWidget*)’"
sowie
"/home/meinName/projects/Paketmanager/mainwindow.h:12: error: after previous specification in ‘mainWindow::mainWindow(QWidget*)’".
Nehme ich die 0 weg, passiert das hier: "/home/meinName/projects/Paketmanager/mainwindow.cpp:4: undefined reference to `vtable for mainWindow'"
Habe auch bereits ein Rebuild vollzogen ohne Erfolg.