【问题标题】:Ignore minimum size when resizing QWidget调整 QWidget 大小时忽略最小大小
【发布时间】:2011-11-23 23:31:32
【问题描述】:

有没有办法让 QWidget(以及它的任何子类)完全忽略它的最小尺寸?我想要的是 QPushButton 在它的大小太小时时被切断,而不是阻止窗口调整大小(默认行为)。

【问题讨论】:

    标签: python qt pyqt qwidget


    【解决方案1】:

    你可以使用:

    button.setSizePolicy(QSizePolicy.Ignored, QSizePolicy.Ignored)
    

    但您必须自己设置初始大小。
    或者您可以将最小尺寸设置为一个小的非零值:

    button.setMinimumSize(1,1)
    

    要将其应用于小部件中的所有按钮,您可以尝试使用样式表,但当按钮处于其最小内容大小时边框不会消失(至少在 Linux 上使用QGtkStyle):

    dialog.setStyleSheet("QPushButton { min-height: 0px; min-width: 0px }");
    

    【讨论】:

    • 有没有办法让它也适用于子小部件?
    • 有没有办法控制先剪辑哪些小部件?
    • 显然,如果您在将小部件插入布局时为小部件设置拉伸值,则首先剪切值最低的小部件。
    • Qt 似乎总是首先剪切最小的小部件,而不管拉伸值如何。还有其他想法吗?
    • @DK 那么你可能应该编写自己的布局类(如FlowLayout example)。
    猜你喜欢
    • 1970-01-01
    • 2012-02-15
    • 1970-01-01
    • 1970-01-01
    • 2020-02-05
    • 2014-03-13
    • 2019-02-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多