Qt4 中的 QGraphicsView 在尺寸变化的时候如何让里面的图元不要跟着居中?

本人菜鸟,对 QGraphicsView 的工作方式理解的不是很透彻,尤其是下面这个情况:

当我使用 QGraphicsView 显示两个 QGraphicsItem 的时候,位置是对的:
未命名.jpg

但是当我通过拖动 resize 过 QGraphicsView 之后,这两个图元就自己跑到中间去了:
未命名.jpg

我想让这两个 Item 钉在它们改在的位置,应该怎么做?

PS:我试过centerOn()等方法,ms没有效果。现在唯一有效果的办法是人为的调用 setSceneRect() 把这个值设置的非常大。但是这样的话很多后续的操作都会受到影响。

不胜感谢。

阅读 9.3k
1 个回答

好吧,这个问题是我自己提的……这个问题好傻,怎么这么着急就来问呢……-_-!
认真看了一下文档,果然遗漏了一部分,恰好就是这部分。
解决方法很简单,就是调用:

QGraphicsView::setAlignment(Qt::AlignLeft | Qt::AlignTop);

-_-

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题