python - 如何在 PyQt 中设置大于屏幕 2/3 的小部件的初始大小

标签 python qt pyqt qt4 pyqt4

在主窗口中,我有一个具有自然大小的中央小部件,我想将它初始化为这个大小。但是,我不希望它固定为这个大小;用户应该能够缩小或扩大它。

Qt documentation指出:

Note: The size of top-level widgets are constrained to 2/3 of the desktop's height and width. You can resize() the widget manually if these bounds are inadequate.

但我无法按规定使用resize方法。

下面的最小示例说明了这个问题:如果 wh 给出的宽度和高度小于屏幕宽度和高度的 2/3,则窗口得到预期的大小。如果它们更大,则窗口会截断一些大小。

#!/usr/bin/env python
from PyQt4 import QtCore, QtGui
import sys
w = 1280; h = 720
app = QtGui.QApplication (sys.argv [1:])
frm = QtGui.QFrame ()
frm.sizeHint = lambda: QtCore.QSize (w, h)
win = QtGui.QMainWindow ()
win.setCentralWidget (frm)
win.show ()
sys.exit (app.exec_ ())

最佳答案

我认为这应该为你做

from PyQt4 import QtCore, QtGui
import sys
w = 2280; h = 1520
app = QtGui.QApplication (sys.argv [1:])
frm = QtGui.QFrame ()
#frm.sizeHint = lambda: QtCore.QSize (w, h)
win = QtGui.QMainWindow ()
win.setCentralWidget (frm)
win.resize(w, h)
win.show ()
sys.exit (app.exec_ ())

关于python - 如何在 PyQt 中设置大于屏幕 2/3 的小部件的初始大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32017853/

相关文章:

python - NLTK - 在没有 Downloader UI 的情况下从命令行下载除 corpara 之外的所有 nltk 数据

python - Python turtle 模块中 turtle 的默认值

python - 将变量从 Powershell 传递到 Python

python - 为什么我不能从 pypi 安装 PyQt5?

c++ - 使用 QML 清除 WebView 缓存

c++ - 在 QT 中创建带有表单的 Widget 时递归构造函数调用?

python - 打开 QDialog 并保存最后的状态

python - PyQt5:在运行时更新标签

Python Tkinter 从标签中删除/删除图像

c++ - 用于故障排除的对话框而不是打印命令 pyqt