我正在处理xbmc媒体应用程序的python脚本,因此我可以使用百分比字符串更新文本标签。我已将标签文本设置为" 0%"首先,但我不知道如何使用" 1%"," 10%"," 20%"更新标签文本。等等。
当我尝试这个时:
progressStartTime = datetime.datetime.now()
delta = datetime.datetime.now() - progressStartTime
secondsLeft = int(delta.seconds) / float(percentageComplete) * (100.0 -
percentageComplete)
if secondsLeft > 30:
secondsLeft -= secondsLeft % 10
self.setControlLabel(self.main_loading_time_left, "" % secondsLeft)
我在更新标签中的文字时遇到了问题 错误。我得到的错误是:ZeroDivisionError:float division
错误是跳到这一行:
secondsLeft = int(delta.seconds) / float(percentageComplete) * (100.0
- percentageComplete)
您能帮我解决一下如何使用百分比字符串更新标签中的文字吗?
修改:以下是更新代码:
percentageComplete = 0
if percentageComplete < 1:
self.getControl(4202).setLabel("1%")
progressStartTime = datetime.datetime.now()
delta = datetime.datetime.now() - progressStartTime
secondsLeft = int(delta.seconds) * (100.0 - percentageComplete)
if percentageComplete > 1:
secondsLeft -= secondsLeft % 10
self.getControl(4202).setLabel(secondsLeft + "%")
#self.setControlLabel(self.main_loading_time_left, "%" % secondsLeft)
答案 0 :(得分:1)
当你处于0%时,你无法确定剩下的时间。用if case排除这种情况。