[英]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.