【问题标题】:How to create a list of float numbers in qt-designer如何在 qt-designer 中创建浮点数列表
【发布时间】:2021-07-25 01:30:37
【问题描述】:
在 qt-designer 中,是否可以创建一个值列表(浮点数)?这样我就可以从中选择任何一个,比如说,在公式中替换?
doubleSpinBpx 值工作正常:
我可以手动输入:
razmerbloka = self.doubleSpinBox_6.value()
但我想从数字列表中选择。
在 qt-designer 中,我只找到了一个字符串列表(组合框)。这不是我想要的
【问题讨论】:
标签:
python
qt
pyqt
pyqt5
qt-designer
【解决方案1】:
诸如数字之类的值始终呈现为文本。您与此文本的交互方式取决于应用程序的逻辑如何解释字符串以及它为您提供查看、复制等操作的操作。
在您的情况下,如果您的值不遵循特定顺序(例如特定幅度的增量步骤),我会选择一个组合框。旋转框需要特定的步骤和一系列值。任何其他行为只会造成混乱,因为这个 UI 组件的这种行为已经存在了很长时间,并且用户期望与它有特定的交互方式。这并不意味着它不可能做到。它只需要创建一个高度自定义的旋转框版本。
另一方面,组合框提供了用户可以选择的所有值的简洁表示。您可以混合使用数字格式、标准字符串、日期等(不推荐,因为任何 UI 都应该努力保持一致)。
对于 Qt 5.6 用户报告 this way of adding items。 Qt 5.5 和更早版本显然不通过设计器支持此功能(无法确认,我有 Qt 5.9,设计器的工作方式与 5.6 中描述的相同)。
如果您的数据(在本例中为浮点数)来自某个外部源(例如 CSV 文件),我建议您使用 addItem() 在您的代码中填写组合框的值列表。
【讨论】:
-
-
@Bokan23 请发布一个单独的问题并尝试包括您如何可视化 UI。从您在这里的评论中,我真的不明白您想要做什么。 :D 通常,使用组合框中的选定项目来更改某些内容是通过插槽和信号完成的。列表中的每个项目都有一个索引。选择不同的项目后,当前选择的索引会发生变化并发出信号currentIndexChanged。您可以使用此索引从组合框中检索项目并分别设置按钮的标签。如果我理解你..