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

Code: Alles auswählen

#include <QDomElement>
#include <QDomNode>
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:

Code: Alles auswählen

<Programmname>exited with code -1073741511

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

Code: Alles auswählen

Ein push Button mit dem Namen pushBOK

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 :-D. 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