Seite 1 von 1

[gelöst] hoffentlich kleines Problem setupUi(QMainWindow*)

Verfasst: 16. August 2006 19:01
von silversurfer2025
Hallo zusammen,

erst einmal DANKE! ohne dieses Forum und seine fleissigen Helfer waere ich nun sicher nicht so weit wie ich bin und waere sicherlich um einiges verwirrter...

So, nachdem ich nun erfolgreich mein .pro file geschrieben habe und darin alle Dateien (.h,.cpp), LDFLAGS und CXXFLAGS gesetzt habe und erstaunlicherweise auf den ersten Anlauf ein brauchbares Makefile herausgekommen ist (ich = stolzWieBolle) habe ich nun noch ein kleineres Problem beim Kompilieren. Ich habe mich fuer den multiple-inheritance ansatz aus dem tutorial entschieden und meine GUI-Klasse wie volge geschrieben:

FrameWork_GUI.h:

Code: Alles auswählen

#include "../FrameWork.h"
#include "ui_interface.h"
#include <QObject>
#include <QDialog>

class FrameWork_GUI : public FrameWork, public QDialog, public Ui::Interface
{
	Q_OBJECT

	public:
		FrameWork_GUI(QWidget *parent = 0);
};

#endif /*_FrameWork_GUI_*/


FrameWork_GUI.cpp (der relevante Teil):

Code: Alles auswählen

#include "FrameWork_GUI.h"

FrameWork_GUI::FrameWork_GUI(QWidget *parent)
	: QDialog(parent)
{
	setupUi(this);
}
Nun bekomme ich leider beim kompilieren folgenden Fehler:

Code: Alles auswählen

FrameWork_GUI.cpp: In constructor ‘FrameWork_GUI::FrameWork_GUI(QWidget*)’:
FrameWork_GUI.cpp:13: error: no matching function for call to ‘FrameWork_GUI::setupUi(FrameWork_GUI* const)’
ui_interface.h:127: note: candidates are: void Ui_Interface::setupUi(QMainWindow*)
Nun verstehe ich das Ganze aber nicht so richtig, denn da ich von UI::Interface abgeleitet habe sollte diese Funktion doch zu sehen sein oder nicht? Im tutorial steht es jedenfalls genau so..

Vielen lieben Dank noch einmal fuer eure stete Muehe ud Hilfe,

Gruesse
Tim

Re: hoffentlich kleineres Problem mit setupUi(QMainWindow*)

Verfasst: 16. August 2006 23:57
von Einmaliger
silversurfer2025 hat geschrieben:Nun verstehe ich das Ganze aber nicht so richtig, denn da ich von UI::Interface abgeleitet habe sollte diese Funktion doch zu sehen sein oder nicht?
Ist sie doch. Sie benötigt nur als Parameter ein Objekt, das von QMainWindow ableitet (oder direkt ein QMainWindow). Deine Klasse tut das nicht. Sie IST kein QMainWindow und damit kannst du sie auch nicht so aufrufen. Wenn möglich, leite statt von QDialog von QMainWindow ab.

messerscharf kombiniert.

Verfasst: 17. August 2006 00:07
von silversurfer2025
ahso, habe es geaendert und nun funktioniert es.. Nur frage ich mich im Moment warum es im Tutorial dann geht? Liegt es daran dass im tutorial mit einem Dialog gearbeitet wird, waehrendessen ich mit einem QMainWindow gearbeitet habe? (Messerscharf kombiniert Sherlock)...

Gruesse und dank
Tim