簡體   English   中英

用QPainter繪制

[英]Draw with QPainter

我需要使用QPainter繪制,但是當我嘗試這樣做時,

void paintEvent( QPaintEvent* )

我發現錯誤:

QPainter :: setPen:畫家不活躍

QPainter :: setBrush:畫家不活躍

我可以在無效的paintEvent( QPaintEvent* )使用QPainter嗎?

謝謝。

您正在使用小部件作為QPainter的繪制設備。 在這種情況下, QPainter通常只能在小部件的paint事件的上下文中使用。 QPainter文檔對此有以下說法:

警告:當paintdevice是窗口小部件時,QPainter只能在paintEvent()函數內部或paintEvent()調用的函數中使用; 除非設置了Qt :: WA_PaintOutsidePaintEvent小部件屬性。 在Mac OS X和Windows上,無論此屬性的設置如何,都只能在paintEvent()函數中進行繪制。

通過為QPainter設置另一個繪制設備(例如QPixmap ,可以在繪制事件之外使用QPainter

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM