0

我开始在我的应用程序中使用 Qt。我的应用程序是基于 MFC 的。我想在我当前的 MFC 视图中绘制一些 QGraphicsItems,可以吗?

您可能会说可以通过在 MFC 视图中使用 QWinWidget 托管 QGraphicsView 来完成,但是这不起作用。因为我的画布(MFC 视图)支持缩放和旋转,而 QGraphicsView 本身不支持。当我缩放 QGraphicsItem 时,QGraphicsView 显示滚动条而不是放大自身。

有什么建议吗?谢谢!

4

2 回答 2

0

从理论上讲,您可以使用在缓冲区QGraphicsScene::paint中绘制场景QGraphicsItems,然后将其绘制到 MFC 视图,但这没有任何意义......

到底有什么问题QGraphicsView?你看过它的rotate(), scale(),translate()shear()函数吗?

于 2010-05-10T14:28:30.707 回答
0

您可以通过将ScrollBarPolcies设置为 Qt::ScrollBarAlwaysOff 来关闭 QGraphicsView 滚动条的显示。(QGraphicsView 是 QAbstractScrollArea 的子类。)

我不确定我是否理解旋转 QGraphicsView 本身而不是内容的意思。没有滚动条,我看不出区别。QGraphicsItem 的许多功能(如您所指出的编辑)也取决于 QGraphicsScene 和 QGraphicsView 中的事件处理才能工作。我认为仅将 QGraphicsItem 插入 MFC 视图不会满足您的要求。

于 2010-05-11T01:55:18.137 回答