Ich habe gestern mein erstes OpenGL Programm zum laufen gebracht. Wie in der offiziellen Qt Dokumentation (auf doc.trolltech.com) empfohlen, verwende ich ein QPainter Objekt zum Zeichnen (da 2D).
[Bitte jetzt nicht fragen warum der hier OpenGL für 2D nimmt, danke
Was mir aber aufgefallen ist, ist folgendes:
Wenn das Programm läuft (es ist ein Fenster mit nur einem von der QGLWidget Klasse abgeleitetem Widget) so wird der Inhalt des Fenster grau wenn das Fenster außerhalb des Bildschirms bewegt wird. Es ist aber nicht vollständig grau, sonder hat irgendwie teilweise noch fragmentartig am Rand den ursprünglichen Inhalt (ich habe es einfach schwarz gefüllt).
Mein Code dazu ist folgender:
void MyGLDrawer::paintEvent(QPaintEvent *event)
{
QPainter painter;
painter.begin(this);
painter.fillRect(event->rect(), background); // "clear" the window with the background QBrush
painter.end();
}
Und meine Frage ist folgende:
Kann man irgendwie erreichen, dass der Inhalt meines Fensters nicht "zerstört" wird sobald es außerhalb des Bildschirmrandes bewegt wird?
Um es besser nachvollziehen zu können habe ich ein Bild erstellt und hochgeladen:
http://img75.imageshack.us/img75/9659/o ... robcx4.png