快速Gui与Qt和Python Chaper4 Alert.pyw没有弹出

时间:2013-11-28 10:39:59

标签: python-2.7 qt4 pyqt4

我开始学习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_()  

感谢您的帮助

0 个答案:

没有答案