📜  PyQt5 QSpinBox – 如何获得尺寸提示(1)

📅  最后修改于: 2023-12-03 15:33:53.858000             🧑  作者: Mango

PyQt5 QSpinBox – 如何获得尺寸提示

在 PyQt5 应用程序中,QSpinBox 控件是一个可编辑的数字选择框,允许用户通过向上或向下的箭头增加或减少其值。在某些情况下,您可能需要获得 QSpinBox 控件的大小提示以调整窗口大小或布局。

获取 QSpinBox 尺寸提示

要获取 QSpinBox 控件的大小提示,可以使用 sizeHint() 方法。这将返回一个 QSize 对象,其中包含 QSpinBox 控件的建议大小。您可以将此提示大小用于调整窗口大小或设置布局。

# 创建 QSpinBox 控件
spin_box = QSpinBox()

# 获取尺寸提示
size_hint = spin_box.sizeHint()
将 QSpinBox 大小提示用于布局

尺寸提示通常用于确定控件的大小,以便能够正确布局应用程序的其他部分。要将 QSpinBox 控件的大小提示用于布局,请将其设置为大小策略的一部分。

# 创建 QSpinBox 控件
spin_box = QSpinBox()

# 设置大小策略
spin_box.setSizePolicy(QSizePolicy.Expanding, QSizePolicy.Fixed)

# 获取尺寸提示
size_hint = spin_box.sizeHint()

# 根据尺寸提示设置控件大小
spin_box.setFixedWidth(size_hint.width())
spin_box.setFixedHeight(size_hint.height())

在这里,我们首先将大小策略设置为 QSizePolicy.Expanding 和 QSizePolicy.Fixed。这将使 QSpinBox 控件根据父容器调整其宽度,并使用其计算的尺寸提示设置其高度。然后,我们将控件的大小设置为尺寸提示的大小。

如果您想要在布局中使用 QSpinBox 控件,建议使用 QFormLayout 或 QHBoxLayout。这些布局会自动处理控件的大小,并根据其大小将其正确放置。

# 创建 QSpinBox 控件
spin_box = QSpinBox()

# 创建 QHBoxLayout 并添加控件
layout = QHBoxLayout()
layout.addWidget(spin_box)

这里,我们创建了一个 QHBoxLayout 并将 QSpinBox 控件添加到其中。该布局将自动根据控件的大小调整其位置。