ScientificSpinbox - 一个用于操作物理量的Qt小部件
项目描述
scientific-spinbox
ScientificSpinbox 是一个基于 QDoubleSpinBox 的 Qt 小部件,允许用户以自然的方式插入和操作物理量。
入门
此小部件使STEM(科学、技术、工程和数学)领域的用户能够以自然的方式与带有单位和它们之间转换的数值输入进行交互,同时允许使用科学记数法并添加提高用户体验的资源。
处理单位和它们转换的后端可以单独设置/集成,但目前正在使用包 Pint。
此包还使用 QtPy,PyQt/PySide 的抽象层,使得在那些绑定及其版本之间进行交换变得简单。
其主要应用是与 PyMR 框架集成,以在设置磁共振实验的物理值时提供更好的用户界面,其中需要使用例如频率、角度、电压和电流。
尽管有特定的用途,我们仍然将其作为一个独立包提供,以便更多人从中受益。最终目的是在将来如果感兴趣的话,将这个特殊的 QSpinBox 集成到 Qt/PySide/PyQt 包中。
示例
以下是一个用于插入时间单位的 ScientificSpinBox 小部件的示例。允许的 单位 有 s、ms 和 us,基本单位是 ms。该小部件允许用户使用科学记数法,通过步进增减来编辑值,并插入所需数量的任意小数位数。
尽管用户可以玩转单位,但 baseValue 将始终是转换为基本单位的输入值。
带有 base_unit='ms' 和 allowed_units=['s','ms','us'] 的 ScientificSpinBox 示例。
安装、更新和卸载
要安装或更新,请执行以下操作
pip install -U scientific-spinbox
要删除,请执行以下操作
pip uninstall scientific-spinbox
要从本地克隆中以开发模式安装,请执行以下操作
git clone https://gitlab.com/dpizetta/pqwidget.git scientific-spinbox
cd scientific-spinbox && git checkout develop-v1.x
pip install -e .
测试
要为 scientific-spinbox 运行自动化测试,您可以使用 tox 上的 test 环境
tox -e test
默认情况下,test 环境使用 PyQt5
有针对使用 PyQt5、PyQt6 和 PySide6 以及 Python 3.10 和 Python 3.11 的小部件进行测试的环境。
tox -e py310-test-pyside6
tox -e py310-test-pyqt5
tox -e py310-test-pyqt6
tox -e py311-test-pyside6
tox -e py311-test-pyqt5
tox -e py311-test-pyqt6
用法
此小部件旨在用于您的 Qt 应用程序中。请阅读文档以查看用法示例以及如何使用它和扩展其功能的相关细节。
兼容性
目前与 PyQt5、PyQt6 和 PySide6 兼容。目前没有计划实现与 PySide2 的兼容层。
支持
没有任何保证或支持。自行承担风险使用。如果您发现任何问题,请报告问题,维护者将尝试或帮助修复。
贡献
欢迎并感谢任何贡献。在贡献之前,请阅读文档中的“贡献”部分。
许可证
项目状态
该项目仍处于 测试版 状态。它正在积极开发中,并应很快达到第一个稳定版本。
项目详情
下载文件
下载适用于您平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。
源代码发行版
编译后的发行版
哈希值 for scientific_spinbox-1.0.0.dev6-py3-none-any.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | ba08f65e5384fe4de3e1896647e28ca8d125d2a4231ad8797be5e519675883ae |
|
MD5 | 0a64942166b53745ecb2b9e3b5897c83 |
|
BLAKE2b-256 | 7cf76ebe435d88b6e76543659f65003628fbe538cd8abd87e3890a6cb2fd5927 |