Bug oder Bedienungsfehler mit QLine

Alles rund um die Programmierung mit Qt
Antworten
dazedly
Beiträge: 197
Registriert: 3. Oktober 2010 15:38
Kontaktdaten:

Bug oder Bedienungsfehler mit QLine

Beitrag von dazedly »

Hallo Leute,
ich habe ein Problem mit QLine. Ich male mit dem QPainter linien in ein QGlWidget und füge darunter eine QPixmap ein, dessen Linien an der selben Stelle gemalt werden. Im QGLwidget gibt es einen Versatz nach links, so lange die Linie nicht dicker als ein Pixel ist. Mit QRects existiert das Problem nicht.

Im Anhang gibt es ein kompilierbares Beispiel.

Bild

Qt Version:

Code: Alles auswählen

Package: libqt4-gui
Source: qt4-x11
Priority: extra
Section: oldlibs
Installed-Size: 132
Maintainer: Kubuntu Developers <kubuntu-devel@lists.ubuntu.com>
Architecture: amd64
Version: 4:4.8.0-1ubuntu8~oneiric1~ppa2
Depends: libqt4-designer (= 4:4.8.0-1ubuntu8~oneiric1~ppa2), libqt4-opengl (= 4:4.8.0-1ubuntu8~oneiric1~ppa2), libqt4-svg (= 4:4.8.0-1ubuntu8~oneiric1~ppa2), libqtgui4 (= 4:4.8.0-1ubuntu8~oneiric1~ppa2)
Filename: pool/main/q/qt4-x11/libqt4-gui_4.8.0-1ubuntu8~oneiric1~ppa2_amd64.deb
Size: 63146
MD5sum: a9158949fc332c1aa094ddef742575ed
SHA1: aa2583e2f23f245b14e8b5c81ba85f36fb7cf620
Description: transitional package for Qt 4 GUI runtime libraries
Dateianhänge
Linebug.zip
(33.53 KiB) 150-mal heruntergeladen
bug.png
bug.png (30.77 KiB) 2801 mal betrachtet
franzf
Beiträge: 3114
Registriert: 31. Mai 2006 11:15

Re: Bug oder Bedienungsfehler mit QLine

Beitrag von franzf »

Laut Doku zu QGLWidget nimmt man drawGL für 3D-Inhalt. 2D-Zeugsel macht man wie gehabt im paintEvent - dann geht dein Code problemlos.
Wenn du ein 2d-Overlay über 3D-Inhalt haben willst, wird auch auf ein Beispiel verwiesen. Musst halt bissl rumprobieren.
dazedly
Beiträge: 197
Registriert: 3. Oktober 2010 15:38
Kontaktdaten:

Re: Bug oder Bedienungsfehler mit QLine

Beitrag von dazedly »

Macht keinen Unterschied, ob ich paintEvent oder paintGl benutze. Das Ergebnis ist das gleiche. Ich habe festgestellt, dass dieses Fehlverhalten mit qt 4.7.4 nicht vorhanden ist. Ich hab Bug bei Qt gemeldet und bin gespannt, ob jemand antwortet.
https://bugreports.qt-project.org/browse/QTBUG-25182
franzf
Beiträge: 3114
Registriert: 31. Mai 2006 11:15

Re: Bug oder Bedienungsfehler mit QLine

Beitrag von franzf »

Ich verwende Qt-4.8.1, und habe kein Problem mit dem paintEvent() im QGLWidget. Du verwendest Kubuntu, da ist es sicher nicht so leicht, einfach mal Qt zu aktualisieren. Also am besten selber kopilieren.
Antworten