PyQt4:如何缩放 QWidget?

PyQt4: How to scale a QWidget?

我创建了一个 QWidget,里面有很多子部件。为了查看整个图片,我想缩小 QWidget。然后缩小它。但是 QWidget 没有 scale 接口。

QGraphicsView 有一个 scale 接口,所以我尝试将 QWidget 放在 QGraphicsView 中。比例尺有效,但是在 QGraphicsView 中进行拖放非常麻烦(Whosebug 上有一个关于此的 )。

还有其他方法可以缩放 QWidget 吗?

Qt 中没有对此类功能的明确支持。您找到的解决方案之一是:

  1. 将父级 QWidget 嵌入到 QGraphicsWidget 中,然后在场景中查看它。拖放处理 .

  2. 手动 render() 视图小部件 paintEvent 中的小部件。在对任何坐标应用缩放后,同时保持必要的不变量,您必须将所有事件转发到呈现的小部件。视图小部件必须在外部表现得就像被查看的小部件一样,而不是缩放比例的变化。这将处理拖放操作。