我开始学习Qt,我现在正在做 alert.pyw 示例。这个例子工作得很好,但我想测试它,如果它真的像它描述的那样工作,所以当我传递时间参数我实际上放入一个时间到达(例如,现在它是11:34并且我通过了11:35或11:36,为了确保我在等待时间较长的情况下尝试了几次,我实际上等了一段时间它应该弹出几分钟。) 好吧,当设定的时间是重新启动时,没有窗口实际弹出“唤醒我” 这是因为代码实际上并不意味着工作或有一些奇怪的事情发生?
以下是代码:
from __future__ import division
from __future__ import print_function
from __future__ import unicode_literals
from future_builtins import *
import sys
import time
from PyQt4.QtCore import (QTime, QTimer, Qt, SIGNAL)
from PyQt4.QtGui import (QApplication, QLabel)
app = QApplication(sys.argv)
try:
due = QTime.currentTime()
message = "Alert!"
if len(sys.argv) < 2:
raise ValueError
hours, mins = sys.argv[1].split(":")
due = QTime(int(hours), int(mins))
if not due.isValid():
raise ValueError
if len(sys.argv) > 2:
message = " ".join(sys.argv[2:])
except ValueError:
message = "Usage: alert.pyw HH:MM [optional message]" # 24hr clock
while QTime.currentTime() < due:
time.sleep(20) # 20 seconds
label = QLabel("<font color=red size=72><b>{0}</b></font>"
.format(message))
label.setWindowFlags(Qt.SplashScreen)
label.show()
QTimer.singleShot(60000, app.quit) # 1 minute
app.exec_()
感谢您的帮助