首页 > 解决方案 > 是否可以使用带有 QDoubleSpinBox Value Changed 的​​ lamba 与 if 条件一起做某事?

问题描述

是否可以在下面的示例代码中使用 lambda 或者是否有任何单行解决方案?如果可以怎么办?下面是示例代码:

self.total_spin.valueChanged.connect(self.valuechanged)
def valuechanged(self):
    if self.total_spin.value() != 0.00:
        self.SpinBox_one.setMaximum(100.00)
    else:
        self.SpinBox_one.setMaximum(0.00)

标签: pythonlambda

解决方案


一行中带有 lambda 关键字的等效代码:

self.total_spin.valueChanged.connect(lambda value: self.SpinBox_one.setMaximum(100 if value else 0))

推荐阅读