gpt4 book ai didi

python-3.x - 如何在 Python 3.5、PyQt5 中调整 QMessageBox 的大小

转载 作者:行者123 更新时间:2023-12-02 20:46:58 25 4
gpt4 key购买 nike

我有一个太短的 QMessageBox。

我尝试了各种增加高度的方法,例如 resize、setMinimumHeight、setSizeIncrement + setSizeGripEnabled,但这些尝试均无效。设置 SizeGrip 根本不允许我调整窗口大小。

dialog = QMessageBox(self)

dialog.setWindowTitle('About this programme')
dialog.setText('Introductory text')
dialog.setDetailedText('A bunch more text')

dialog.setMinimumHeight(500)
dialog.setSizeIncrement(1, 1)
dialog.setSizeGripEnabled(True)

dialog.show()

为了引用图片,标有 Rotascript 的窗口大小为 360x,370y。

我做错了什么,或者这是某种错误?

提前致谢。

Screen is a 27" 1080p display

最佳答案

你没有做错任何事。众所周知,QMessageBox 很难调整大小。

通常,人们使用以下三种方法之一:

  1. 使用带换行符的 setText() 而不是 setInformativeText()

    消息框将根据 setText() 方法设置的文本调整大小。这很老套,但您可以简单地在 setText() 中包含一堆空白。

  2. 尝试覆盖QMessageBox的布局

    这包括摆弄 setFixedSize 或覆盖小部件的 event 方法。这是 a good example from a related SO post .

  3. 重新实现QMessageBox

    QMessageBox 的一个基本属性是它不会调整大小。所以,通过反向逻辑,if you want a message box which resizes, you actually don't want a message box .但是,QMessageBox 继承自 QDialog。您可以通过在继承链中上升一个级别并从 QDialog 重新实现您想要的功能来实现您想要的。

我的回复引用了以下资源:

关于python-3.x - 如何在 Python 3.5、PyQt5 中调整 QMessageBox 的大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43955625/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com