使用 QPainter 绘图
我需要使用 QPainter 进行绘制,但是当我尝试这样做时,
void paintEvent( QPaintEvent* )
我发现了错误:
QPainter::setPen:画家未激活
QPainter::setBrush:画家未激活
我可以在不在 void paintEvent( QPaintEvent* )
中使用 QPainter
吗?
谢谢。
I need draw with QPainter
, but when I try to do it not in
void paintEvent( QPaintEvent* )
I catch error:
QPainter::setPen: Painter not active
QPainter::setBrush: Painter not active
Can I use QPainter
not in void paintEvent( QPaintEvent* )
?
Thank you.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您正在使用一个小部件作为 QPainter 的绘画设备。在这种情况下,
QPainter
通常只能在小部件的绘制事件的上下文中使用。QPainter
文档对此有以下说明:通过为
QPainter
设置另一个绘画设备(例如QPixmap
),可以在绘画事件之外使用QPainter
。You are using a widget as the paint device for
QPainter
. In this case,QPainter
can usually only be used within the context of the widget's paint event. TheQPainter
documentation has the following to say about this:It is possible to use
QPainter
outside a paint event by setting another paint device forQPainter
, for example aQPixmap
.