Funktionen "undeclared" bei Subclassing von QtDesi
Verfasst: 17. Juni 2006 17:25
Hallo,
habe heute begonnen eine simple Client-Server-Struktur in C++ zu basteln. Aber leider hab ich direkt bei der GUI Probleme. Ich habe zum ersten Mal mit dem QtDesigner gearbeitet und habe mir eine ui-Datei namens GUI.ui erstellt. Diese habe ich in mein kdevelop-Projekt eingebunden und die entsprechende Header-Datei und cpp-Datei kompiliert. Dann habe ich mir eine Klasse ServerGUI definiert, die von GUI abgeleitetet ist, damit ich meinen Code einfügen kann und später die GUI noch ändern kann.
Funktioniert auch wunderbar. Wenn ich mir ein ServerGUI-Objekt erzeuge und anzeige, sieht alles ordentlich aus. Wenn ich dann aber im Konstruktor beispielsweise auf den Button "btnServerStart" zugreifen möchte, kennt er diesen zwar, aber sagt immer, dass die Funktionen "undeclared" seien. Beim Befehl
sagt er z.B.
Ich poste hier mal noch den gesamten Code der einzelnen Dateien. Ist ja nicht sonderlich umfangreich...
ServeGUI.h:
ServerGUI.cpp:
GUI.h:
Wäre super, wenn mir da jemand helfen könnte! Wie gesagt, der Fehler tritt nicht nur beim Button auf, sondern z.B. auch bei listClients->addColumn("bla"); und anderen eigentlich vorhandenen Funktionen...
Danke schon mal!
gehho
habe heute begonnen eine simple Client-Server-Struktur in C++ zu basteln. Aber leider hab ich direkt bei der GUI Probleme. Ich habe zum ersten Mal mit dem QtDesigner gearbeitet und habe mir eine ui-Datei namens GUI.ui erstellt. Diese habe ich in mein kdevelop-Projekt eingebunden und die entsprechende Header-Datei und cpp-Datei kompiliert. Dann habe ich mir eine Klasse ServerGUI definiert, die von GUI abgeleitetet ist, damit ich meinen Code einfügen kann und später die GUI noch ändern kann.
Funktioniert auch wunderbar. Wenn ich mir ein ServerGUI-Objekt erzeuge und anzeige, sieht alles ordentlich aus. Wenn ich dann aber im Konstruktor beispielsweise auf den Button "btnServerStart" zugreifen möchte, kennt er diesen zwar, aber sagt immer, dass die Funktionen "undeclared" seien. Beim Befehl
Code: Alles auswählen
btnServerStart->setEnabled(false);Er kennt "btnServerStart", aber anscheinend nicht die Funktion "setEnabled(bool)". Genauso verhält es sich auch bei anderen Qt-Objekten. Hat jemand eine Ahnung wieso?ServerGUI.cpp: In constructor `ServerGUI::ServerGUI(QWidget*, const char*)':
ServerGUI.cpp:5: error: `setEnabled' undeclared (first use this function)
ServerGUI.cpp:5: error: (Each undeclared identifier is reported only once for each function it appears in.)
Ich poste hier mal noch den gesamten Code der einzelnen Dateien. Ist ja nicht sonderlich umfangreich...
ServeGUI.h:
Code: Alles auswählen
#include <GUI.h>
class ServerGUI : public GUI {
Q_OBJECT
public:
ServerGUI(QWidget* parent=0, const char* name=0);
~ServerGUI();
};
Code: Alles auswählen
#include <ServerGUI.h>
ServerGUI::ServerGUI( QWidget* parent, const char* name )
: GUI( parent, name ) {
btnStartServer->setEnabled(false);
}
ServerGUI::~ServerGUI() {
}Code: Alles auswählen
#ifndef GUI_H
#define GUI_H
#include <qvariant.h>
#include <qmainwindow.h>
class QVBoxLayout;
class QHBoxLayout;
class QGridLayout;
class QSpacerItem;
class QAction;
class QActionGroup;
class QToolBar;
class QPopupMenu;
class QPushButton;
class QListView;
class QListViewItem;
class QTextEdit;
class GUI : public QMainWindow
{
Q_OBJECT
public:
GUI( QWidget* parent = 0, const char* name = 0, WFlags fl = WType_TopLevel );
~GUI();
QPushButton* btnStartServer;
QListView* listClients;
QTextEdit* textDisplay;
protected:
protected slots:
virtual void languageChange();
};
#endif // GUI_H
Danke schon mal!
gehho