u634781 2010-11-09 14:53
浏览 657
已采纳

用pyqt4写个定时弹出框的问题

想要做个定时提醒功能之类的小软件,写了下面的代码,但是只能弹出一次就自动退出了。

[code="python"]
import sys
from PyQt4 import QtGui,QtCore
import time

class MyWidget(QtGui.QWidget):
def init(self, msg, parent=None):
QtGui.QWidget.__init__(self, parent)
self.setFixedSize(200, 120)
self.quit = QtGui.QPushButton(msg, self)
self.quit.setGeometry(62, 40, 75, 30)
self.quit.setFont(QtGui.QFont("Times", 18, QtGui.QFont.Bold))
self.connect(self.quit, QtCore.SIGNAL("clicked()"),
QtGui.qApp, QtCore.SLOT("quit()"))

def msgshow(msg):
app = QtGui.QApplication(sys.argv)
widget = MyWidget(msg)
widget.show()
sys.exit(app.exec_())

while True:
msgshow('haah')
time.sleep(3)
[/code]

不知道问题出在哪里呢?
谢谢

  • 写回答

4条回答 默认 最新

  • JRrrrrr 2010-11-09 16:58
    关注

    [code="python"]
    import sys
    from PyQt4 import QtGui,QtCore
    import time

    class MyWidget(QtGui.QWidget):
    def init(self, msg, parent=None):
    QtGui.QWidget.__init__(self, parent)
    self.setFixedSize(200, 120)
    self.quit = QtGui.QPushButton(msg, self)
    self.quit.setGeometry(62, 40, 75, 30)
    self.quit.setFont(QtGui.QFont("Times", 18, QtGui.QFont.Bold))
    self.connect(self.quit, QtCore.SIGNAL("clicked()"),
    QtGui.qApp, QtCore.SLOT("quit()"))

    def msgshow(self):
        self.setVisible(True)
        time.sleep(10)
        self.setVisible(False)
        time.sleep(10)
        self.msgshow()
    

    if name == '__main__':
    app = QtGui.QApplication(sys.argv)
    widget = MyWidget('haha')
    widget.msgshow()
    sys.exit(app.exec_())
    [/code]

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥50 有数据,怎么建立模型求影响全要素生产率的因素
  • ¥50 有数据,怎么用matlab求全要素生产率
  • ¥15 TI的insta-spin例程
  • ¥15 完成下列问题完成下列问题
  • ¥15 C#算法问题, 不知道怎么处理这个数据的转换
  • ¥15 YoloV5 第三方库的版本对照问题
  • ¥15 请完成下列相关问题!
  • ¥15 drone 推送镜像时候 purge: true 推送完毕后没有删除对应的镜像,手动拷贝到服务器执行结果正确在样才能让指令自动执行成功删除对应镜像,如何解决?
  • ¥15 求daily translation(DT)偏差订正方法的代码
  • ¥15 js调用html页面需要隐藏某个按钮