任何人都知道如何使数字等于或大于100在pyqt lcd中显示为十六进制模式?这是代码:
def showValue(self):
sender = self.sender()
if sender.isChecked():
self.lcdValue += sender.GetValue()
self.lcdNumber.display("0" +str(self.lcdValue))
else:
self.lcdValue -= sender.GetValue()
self.lcdNumber.display("0" +str(self.lcdValue))
for self.lcdValue in (99, 164):
self.lcdNumber.setHexMode()
它以十六进制模式返回有趣的值,不再进行加法或减法。
答案 0 :(得分:1)
我 preeeetty 确定这不是你的意思:
for self.lcdValue in (99, 164):
请改为尝试:
if 99 < self.lcdValue < 164:
不要忘记在方法开头重置它,因为你不想永久地这样做。
答案 1 :(得分:1)
就像Ignacio所提到的,你必须重置它,你可以这样做:
def showValue(self):
sender = self.sender()
if sender.isChecked():
self.lcdValue += sender.GetValue()
else:
self.lcdValue -= sender.GetValue()
self.lcdNumber.display("000000" + str(self.lcdValue))
if 99 < self.lcdValue < 164:
self.lcdNumber.setHexMode()
else:
self.lcdNumber.setDecMode()