重绘 QGraphicsItem 时重新定义 QPainter 选项
我想在 QGraphics 场景中绘制每个 QGraphicsItem 之前重新定义 QPainter。
void GraphicsScene::drawItems( QPainter * painter, int nbItem, QGraphicsItem *[] items, const QStyleOptionGraphicsItem[] options, QWidget * widget = NULL )
现在已经过时了,“新”方法是什么?
谢谢
I want to redefine the QPainter before drawing earch QGraphicsItem in a QGraphics scene.
void GraphicsScene::drawItems( QPainter * painter, int nbItem, QGraphicsItem *[] items, const QStyleOptionGraphicsItem[] options, QWidget * widget = NULL )
Is now obsolete, what's the "new" method ?
Thx
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
QGraphicsScene 不负责画家...它负责项目的存储和检索。 QGraphicsView 负责视图的绘制和转换。
如果您想设置渲染提示来修改 QPainter 行为,您可以使用 QGraphicsView::setRenderHint。
如果您只想对另一个特殊的 QPainter 引擎进行一次渲染,文档将显示一个打印机示例 此处。
以下是 QGraphicsView 上的文档链接。
The QGraphicsScene isn't in charge of the painter... it is in charge of the storage and retrieval of the items. The QGraphicsView is in charge of the painter and transformation of the view.
If you want to set render hints to modify the QPainter behavior, you can do that from the view using QGraphicsView::setRenderHint.
If you just want to do a single render to another special QPainter engine, the documentation shows an example for it to a printer here.
Here is link to the docs on QGraphicsView.