放大PyQt的一个看法?(Zooming a view in PyQt?)

2019-10-23 06:30发布

我有一个简单,做树的应用程序,显示QTreeView一个内部QMainWindow. 我想给用户更改内容的放大级别的能力(使用纺纱器最有可能的),但实际上不更改文字的基本字体大小。

有没有办法做到这一点没有改变我的整个应用程序到QGraphicsScene ? 这款应用程序只是显示文本,没有图形或任何幻想不是想改变视图的比例以外的好老土树; 因此,我想,切换到图形场景将是矫枉过正。

或者说,我错了,并切换到图形场景是唯一的简单的方法来做到这一点?

注意一个应用程序的下调版本是在代码审查。 它包含一个SSCCE,但有点长,张贴在这里。

在现场讨论如何把小部件上的场景 ,奇趣写道(强调):

我自己和其他几个Trolls've花了一些时间研究这个话题[如何嵌入在QGraphicsScene一个小部件。 这不是微不足道的; 大多数解决方案嵌入部件到场景中结束了几个严重的缺点。 这也是为什么Qt不具有任何现成的,现成的解决方案这一点。

窗口小部件不能缩放或旋转,但图形玩艺儿。

这意味着我无法执行,以简单的方式,操作我想在我QWidget本身。 也就是说,也许我需要将其添加到场景,而这正是我试图避免。 如果是这样的答案,那么我会接受它,并开始一个新的问题,如果我被卡住这样做。

注意:我刚刚发现了这个问题 ,这是一个很值得重复的,并且没有一个(接受)答案。

相关内容

  • http://www.qtcentre.org/threads/62745-Zoom-a-view

  • QTableView中放大/缩小

  • 绘制超过的QGraphicsView窗口小部件(例如按钮)

  • 的QGraphicsView使用鼠标滚轮放大和缩小下鼠标位置

  • https://forum.qt.io/topic/15308/qgraphicsview-zooming-with-qslider

  • https://wiki.qt.io/Smooth_Zoom_In_QGraphicsView

Answer 1:

如在原来的问题,从奇趣引述文档建议,没有内置的方法来放大视图上的。

如果目标是避免使用的QGraphicsViews,对字体的大小在屏幕上分离出来,对保存或打印的字体大小的最简单的方法,就是基本上有两种字体。 一要显示在屏幕上,你可以称之为“放大”,与其他要保存/打印并称之为“字体大小”。

我有这个想法从qtcentre(在我添加到原来的职位太后):

http://www.qtcentre.org/threads/62745-Zoom-a-view



文章来源: Zooming a view in PyQt?
标签: qt pyqt pyside