1
A
回答
1
你想緩存繪畫在QImage
或QPixmap
(可能是QPixmap
)。如果你做了很多,你可能也想看看QPixmapCache
。
此外,可以預先計算大量繪圖,然後使用QPainterPath
s很快完成。我會經常使用它們並在必要時重新計算,而不是在像素圖中緩存整個繪畫事件。
編輯:
我也跑進QPicture簡單地提到,這也可能是你想要看的東西:
的QPicture類是油漆設備,記錄和重放QPainter命令。
1
如果你想避免在paintEvent()中實例化變量,你可以使它們成爲成員變量 - 這包括QPainter對象。你只需要調用update(),當你需要小部件重新繪製自己。
爲什麼你不想從頭開始重新繪製它?這是某種不成熟的優化,還是你注意到放緩?
+0
沒有注意到放緩,做它優化。 – 2009-12-29 19:20:20
+0
完成我的paintEvent後,我發現每次只重繪整個東西並不複雜 – 2009-12-29 22:47:30
相關問題
- 1. 如何在Qt中使用動畫來堆疊小部件?
- 2. 如何使用Horde3d和OpenGL來繪製Qt小部件?
- 3. 在Qt中打印複雜小部件
- 4. Qt小部件在某些條件下無法重繪
- 5. 優化小部件繪畫
- 6. 如何在Qt中執行繪畫?
- 7. QT繪圖不刪除小部件
- 8. 如何重新在Qt樹小部件中的元素?
- 9. 如何在QT中的另一個小部件內部部件?
- 10. 在窗體小部件中繪製窗體QT
- 11. 如何使窗口小部件背景在Qt中透明
- 12. 在MainWindow中覆蓋小部件的繪畫事件
- 13. 使用JavaScript在HTML5中重繪畫布
- 14. Qt - 重新加載小部件內容
- 15. 如何在QT中的樹視圖項目中呈現複雜的小部件?
- 16. 如何在小部件中使用jquery-ui複選框?
- 17. 如何在小部件中使用Eventbus?
- 18. 如何在小部件中使用listview?
- 19. 簡單的qt gui;重複部件
- 20. QT在其他小部件中插入小部件
- 21. Qt - 如何覆蓋小部件?
- 22. 如何確保我的CustomPaint小部件繪畫存儲在柵格緩存中?
- 23. 如何在小部件已經包含在其他小部件中時使用小部件替換小部件?
- 24. Qt/PyQt:如何在繪製小部件時傳遞額外的參數?
- 25. 在qt中動態添加小部件
- 26. 如何在QT Designer中創建的PyQt4小部件上使用pyqtgraph繪製一個圖表?
- 27. 如何使用qt線程訪問小部件?
- 28. Java:使用alpha繪畫重繪文物
- 29. 強制Flutter重繪所有小部件
- 30. 如何使用CATransition重複動畫?
確保使用pixmap緩存的基於整數的接口,而不是基於舊的字符串的接口(在4.6中添加)。 – e8johan 2009-12-29 19:57:51