das 1. Mal mit QOpenGL und Fehler
das 1. Mal mit QOpenGL und Fehler
Hallo,
kann mir jemand mal helfen?
Wenn ich versuch ein GlFenster anzulegen mit glWidg = new GLFenster( 0 ); , wobei das GLFenster von QGlWidget abgeleitet ist, springt der Debugger raus und es kommt folgende Fehlermeldung in einem Konsolenfenster:
QApplication::palette() failed: please instantiate the QApplication object first. ... QWidget: Must construct a QApplication before a QPaintDevice
Bibliotheken, Include-Pfade, Header, etc. sind eingebunden.
$(QTDIR)\include\QtOpenGL
OpenGL32.lib
GLu32.lib
$(QTDIR)\lib
#include<qgl.h>
Weiss nicht was noch sein kann.
Bitte um Hilfe?
kann mir jemand mal helfen?
Wenn ich versuch ein GlFenster anzulegen mit glWidg = new GLFenster( 0 ); , wobei das GLFenster von QGlWidget abgeleitet ist, springt der Debugger raus und es kommt folgende Fehlermeldung in einem Konsolenfenster:
QApplication::palette() failed: please instantiate the QApplication object first. ... QWidget: Must construct a QApplication before a QPaintDevice
Bibliotheken, Include-Pfade, Header, etc. sind eingebunden.
$(QTDIR)\include\QtOpenGL
OpenGL32.lib
GLu32.lib
$(QTDIR)\lib
#include<qgl.h>
Weiss nicht was noch sein kann.
Bitte um Hilfe?
Wie die Fehlermeldung schon sagt,... hast Du ein QApplication Objekt angelegt?
Also z.B.
Also z.B.
Code: Alles auswählen
int main(int argc, char** argv)
{
QApplication app( argc, argv );
// create a new instance of GLFenster
GLFenster* mainWindow = new GLFenster();
mainWindow->show();
// Enters the main event loop and waits until exit() is called
// or the main widget is destroyed, and Returns the value that
// was set via to exit() (which is 0 if exit() is called via quit()).
return app.exec();
}
Bitte seid so nett und ändert den Titel von Beiträgen die gelöst wurden, auf [gelöst] Beitragstitel
-
Christian81
- Beiträge: 7319
- Registriert: 26. August 2004 14:11
- Wohnort: Bremen
- Kontaktdaten:
Glaub ich nicht, da folgender Code bei mir keine Fehlermeldung ausgibt:Funki hat geschrieben:Genauso stehts da(sorry hab ich vergessen zu sagen)
Code: Alles auswählen
int main(int argc, char** argv)
{
QApplication app( argc, argv );
QGLWidget* mainWindow = new QGLWidget();
mainWindow->show();
return app.exec();
}
MfG Christian
'Funktioniert nicht' ist keine Fehlerbeschreibung
'Funktioniert nicht' ist keine Fehlerbeschreibung
... in der initializeGL() über ne extra Funktion.
Ich hab dein Code mal übernommen, aber wie gesagt, kommt immer die selbe Fehlermeldung im Konsolenfenster:
QApplication::palette() failed: please instantiate the QApplication object first. QWidget: Must construct a QApplication before a QPaintDevice
Der Debugger springt gar nicht erst in die main()!
Ich hab dein Code mal übernommen, aber wie gesagt, kommt immer die selbe Fehlermeldung im Konsolenfenster:
QApplication::palette() failed: please instantiate the QApplication object first. QWidget: Must construct a QApplication before a QPaintDevice
Der Debugger springt gar nicht erst in die main()!
-
Christian81
- Beiträge: 7319
- Registriert: 26. August 2004 14:11
- Wohnort: Bremen
- Kontaktdaten:
Er ist noch nicht in der main() - Funktion?
Kann es sein dass Du irgendwo ein globales Objekt anlegst welches etwas graphisches machen möchte? Sieht mir fast so aus...
Hast du u.U. die Qt-Debug libs? Dann könnte man einen Breakpoint auf die Fehlermeldung machen und per Backtrace schauen von wo aus die betreffende Funktion aufgerufen wird. Aber so wie es aussieht ist es irgend ein globales Objekt.
Kann es sein dass Du irgendwo ein globales Objekt anlegst welches etwas graphisches machen möchte? Sieht mir fast so aus...
Hast du u.U. die Qt-Debug libs? Dann könnte man einen Breakpoint auf die Fehlermeldung machen und per Backtrace schauen von wo aus die betreffende Funktion aufgerufen wird. Aber so wie es aussieht ist es irgend ein globales Objekt.
MfG Christian
'Funktioniert nicht' ist keine Fehlerbeschreibung
'Funktioniert nicht' ist keine Fehlerbeschreibung
-
Christian81
- Beiträge: 7319
- Registriert: 26. August 2004 14:11
- Wohnort: Bremen
- Kontaktdaten: