Qt中QPainter的問題

2021-08-07 06:32:20 字數 511 閱讀 3649

我在進行2d繪製時,採用了qpainter的方法,想在qlabel上繪圖,所以直接就

qpainter painter, painter.begin(label);報錯

qpainter::begin: paint device returned engine == 0, type: 1

qpainter::end: painter not active, aborted

qwidget::paintengine: should no longer be called。

然後我通過在qpixmap上畫再通過

painter.begin(label); painter.drawpixmap(0,0, pixmap); 還是同樣的報錯。

最後索性就在pixmap上畫圖,然後

painter.begin(this); paint.drawpixmap(label.x, label.y pixmap);

一了百了。

前提是繪圖**得寫在paintevent中。

Qt學習 QPainter之漸變填充

前面說了有關反走樣的相關知識,下面來說一下漸變。漸變是繪圖中很常見的一種功能,它是利用顏色插值使得兩個或更多顏色之間能夠平滑過渡,簡單來說就是可以把幾種顏色混合在一起,讓它們能夠自然地過渡,而不是一下子變成另一種顏色。它們常被用來建立二維圖形的三維效果。漸變的演算法比較複雜,寫得不好的話效率會很低,...

Qt使用QPainter繪製3D立方體

1.實現思路 網上有另一篇類似的,不過他不是用的 qt 自帶的矩陣運算類 實現思路有點類似使用 opengl 畫立方體,先準備頂點資料 立方體前後四個頂點,從右上角開始順時針 vertexarr qvector,qvector3d,qvector3d,qvector3d,qvector3d,qvec...

Qt 中遇到的問題

在centos 5.4 64b 中安裝qt sdk linux x86 64 opensource 2010.03.bin 一 在welcome不顯示例子程式 且 編譯例子程式時 no valid qt version set.set one in tools options 解決 tools op...