Fehler: expected `{' before »public« ???
-
Hallo
kann mir jemand bei folgender Fehlermeldung weiterhelfen?text_groes.h: In constructor »Schrift::Schrift(const char*, QWidget*)«: text_groes.h:8: Fehler: expected `{' before »public« make: *** [main.o] Fehler 1
text_groes.h...
class Schrift : public QLabel { Q_OBJECT //notwendig, da Klasse Schrift Slots enthält public: Schrift(char const * text, QWidget * parent) : QLabel(text, parent) public slots: void stelle_neu_dar(int groesse){ setFont(QFont("Times",groesse)); repaint(); } };
Mir ist völlig unklar wo da eine { hinsoll. Ich probier grad in die Qt-Thematik reinzukommen und das sollte mein erster 'eigener' Slot werden, hoffe ich nerve hier nich zu sehr mit Anfängerproblemen. Danke für jede Unterstützung.
->Lukas
-
public: Schrift(char const * text, QWidget * parent) : QLabel(text, parent) {} // <--
-
Schrift(char const * text, QWidget * parent) : QLabel(text, parent) // <--
-
mit finix' Vorschlag kann ich gar nichts anfangen, was bringt ein Kommentar?
michbas' Vorschlag mit dem Klammerpaar hatt ich schon ausprobiert, darauf folgte:
usr/include/qt3 -o moc_text_groes.o moc_text_groes.cpp text_groes.h:2: Fehler: expected class-name before »{« token text_groes.h:3: Fehler: ISO-C++ verbietet Deklaration von »Q_OBJECT« ohne Typ text_groes.h:5: Fehler: expected »;« before »public« text_groes.h:9: Fehler: expected `;' before »public« text_groes.h:9: Fehler: expected `:' before »slots« text_groes.h:10: Fehler: expected primary-expression before »void« text_groes.h:10: Fehler: ISO-C++ verbietet Deklaration von »slots« ohne Typ text_groes.h:10: Fehler: expected »;« before »void« text_groes.h:14: Fehler: expected `;' before »}« token moc_text_groes.cpp:22: Fehler: keine Elementfunktion »const char* Schrift::className() const« in Klasse »Schrift« deklariert moc_text_groes.cpp:27: Fehler: »QMetaObject* Schrift::metaObj« ist kein statisches Element von »class Schrift« moc_text_groes.cpp:28: Fehler: »staticMetaObject« ist kein Element von »Schrift« moc_text_groes.cpp:31: Fehler: keine Elementfunktion »QString Schrift::tr(const char*, const char*)« in Klasse »Schrift« deklariert moc_text_groes.cpp:39: Fehler: keine Elementfunktion »QString Schrift::trUtf8(const char*, const char*)« in Klasse »Schrift« deklariert moc_text_groes.cpp:50: Fehler: keine Elementfunktion »QMetaObject* Schrift::staticMetaObject()« in Klasse »Schrift« deklariert moc_text_groes.cpp: In member function »QMetaObject* Schrift::staticMetaObject()«: moc_text_groes.cpp:52: Fehler: »metaObj« wurde in diesem Gültigkeitsbereich nicht definiert moc_text_groes.cpp:54: Fehler: »QLabel« wurde nicht deklariert moc_text_groes.cpp:62: Fehler: »metaObj« wurde in diesem Gültigkeitsbereich nicht definiert moc_text_groes.cpp: At global scope: moc_text_groes.cpp:75: Fehler: keine Elementfunktion »void* Schrift::qt_cast(const char*)« in Klasse »Schrift« deklariert moc_text_groes.cpp: In member function »void* Schrift::qt_cast(const char*)«: moc_text_groes.cpp:79: Fehler: »QLabel« wurde nicht deklariert moc_text_groes.cpp: At global scope: moc_text_groes.cpp:82: Fehler: keine Elementfunktion »bool Schrift::qt_invoke(int, QUObject*)« in Klasse »Schrift« deklariert moc_text_groes.cpp: In member function »bool Schrift::qt_invoke(int, QUObject*)«: moc_text_groes.cpp:85: Fehler: »stelle_neu_dar« wurde in diesem Gültigkeitsbereich nicht definiert moc_text_groes.cpp:87: Fehler: »QLabel« wurde nicht deklariert moc_text_groes.cpp: At global scope: moc_text_groes.cpp:92: Fehler: keine Elementfunktion »bool Schrift::qt_emit(int, QUObject*)« in Klasse »Schrift« deklariert moc_text_groes.cpp: In member function »bool Schrift::qt_emit(int, QUObject*)«: moc_text_groes.cpp:94: Fehler: »QLabel« wurde nicht deklariert moc_text_groes.cpp: At global scope: moc_text_groes.cpp:98: Fehler: keine Elementfunktion »bool Schrift::qt_property(int, int, QVariant*)« in Klasse »Schrift« deklariert moc_text_groes.cpp: In member function »bool Schrift::qt_property(int, int, QVariant*)«: moc_text_groes.cpp:100: Fehler: »QLabel« wurde nicht deklariert moc_text_groes.cpp: At global scope: moc_text_groes.cpp:103: Fehler: keine Elementfunktion »bool Schrift::qt_static_property(QObject*, int, int, QVariant*)« in Klasse »Schrift« deklariert make: *** [moc_text_groes.o] Fehler 1
...was die Sache für mich nicht angenehmer machte. Ich hab das Code-Beispiel übrigens einfach dem Buch 'Das Qt Buch' von Helmut Herold SuSE-Press entnommen ()etwas älter, noch Qt-3, wie ich es verwende).
Danke auch für weitere Hilfe.
->Lukas
-
Leute nehmts mir nich übel, ich hatte einfach vergessen am Anfang qlabel.h zu inkludieren... Anfänger eben...
Danke trotzdem.
->Lukas