Seite 1 von 1
Qt Creator 1.0.0 Fehlermeldung
Verfasst: 4. März 2009 12:02
von nkc
Hallo,
ich habe den Qt Creator 1.0.0 installiert und versuche mein altes Programm mit diesem zu starten.
Bei
bekomme ich folgende Meldung angezeigt:
Code: Alles auswählen
QDomNode: No such file or directory
QDomElement: No such file or directory
Alle anderen includes funktionieren.
Danke
Verfasst: 4. März 2009 13:02
von STS301
bei mir gibt es es auch nicht unter Linux, lösch die includes einmal weg und schau mal ob es dann funktioniert?
Verfasst: 4. März 2009 13:05
von Christian81
CONFIG += xml
Verfasst: 4. März 2009 13:33
von nkc
Ja, das hatte ich vergessen und nun ergänzt.
Kompalierung läuft problemlos.
Wenn ich jedoch das Programm zum laufen bringen möchte,
bekomme ich eine Fehlermeldung von Windows.
Code: Alles auswählen
Programm funktioniert nicht mehr.
Es wird nach einer Lösung für das Problem gesucht...
Danach muss ich den Qt Creator schließen.
Verfasst: 4. März 2009 13:45
von STS301
und funktioniert er danach wieder?
Verfasst: 4. März 2009 13:49
von nkc
Nein danach funktioniert es auch nicht.
Im Qt Application Output Fenster steht folgendes:
Verfasst: 4. März 2009 15:24
von nkc
Ich schreibe mal den Quellcode hinein.
Vielleicht habe ich dort einen Fehler eingebaut.
Beim Drücken auf das Button soll eine Message erscheinen.
Also ein einfaches Signal-Slot Verfahren.
main.cpp
Code: Alles auswählen
#include <QtGui/QApplication>
#include "mainwindow.h"
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
MainWindow w;
w.show();
return a.exec();
}
mainwindow.cpp
Code: Alles auswählen
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <QMessageBox>
using namespace std;
MainWindow::MainWindow(QWidget *parent)
: QMainWindow(parent)
{
setupUi(this);
QObject::connect(pushBOK, SIGNAL(clicked()), this, SLOT(zeige()));
}
MainWindow::~MainWindow()
{
}
void MainWindow::zeige()
{
QMessageBox::about(this, tr("About"), tr("(C) ACADIS\nGesellschaft für anwendergerechte EDV-Lösungen mbH\n\n"
"License Merge\nversion 1.0"));
}
mainwindow.h
Code: Alles auswählen
#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <QtGui/QMainWindow>
#include "ui_mainwindow.h"
class MainWindow : public QMainWindow, private Ui::MainWindowClass
{
Q_OBJECT
public:
MainWindow(QWidget *parent = 0);
~MainWindow();
private slots:
void zeige();
};
#endif // MAINWINDOW_H
mainwindow.ui
Verfasst: 4. März 2009 16:18
von CLRS530
Das einzig für mich ungewöhnliche/neue was ich feststellen kann, ist dein:
Code: Alles auswählen
class MainWindow : public QMainWindow, private Ui::MainWindowClass
{
Q_OBJECT
Ich kenne das so:
Code: Alles auswählen
class MainWindow : public QMainWindow
{
Q_OBJECT
private:
Ui::MainWindowClass ui;
und dann:
Code: Alles auswählen
MainWindow::MainWindow(QWidget *parent)
: QMainWindow(parent)
{
ui.setupUi(this);
QObject::connect(ui.pushBOK, SIGNAL(clicked()), this, SLOT(zeige()));
}
Aber augenscheinlich kann man das so ja machen. Trotz allem würde ich das einmal testen, wenn du an der Stelle nicht genau weißt was du tust

. Auf diese Weise richtet der QtCreator die Klasse nämlich auch ein.
Verfasst: 4. März 2009 17:01
von jerry42
Hallo,
ich hab eben dein Projekt spaßeshalber auch bei mir laufen lassen, und es tut soweit ohne Probleme. Die Message Box wird angezeigt.
Der
Multi Inheritance Approach ist ja vollkommen ok.
ich bin leider unter linux unterwegs und kann jetzt nicht testen, ob es mit dem QTCreator unter windows bei mir funktioniert.
gruß jerry42