2017-06-12 111 views
0

我开始的应用程序,将显示当前datetime.datetime.now()连同一个按钮,当按下时可以添加当前时间到列表。 datetime每秒更新一次,但我无法看到窗口中的按钮元素。日期时间更新实时,没有显示其他元素

我对pyqt很新,所以我确信这里有什么问题。

有没有人可以帮助我找出为什么我不能看到除更新日期时间之外的任何其他元素?它是覆盖它还是什么?任何帮助将不胜感激。

import sys 
from PyQt4.QtCore import * 
from PyQt4.QtGui import * 
from datetime import datetime 


class feedingTime(QDialog): 
    def __init__(self): 
     QDialog.__init__(self) 

     layout = QGridLayout() 
     self.label = QLabel(datetime.now().strftime('%Y-%m-%d %H:%M:%S'),self) 
     self.button = QPushButton("test") 
     layout.addWidget(self.label,0,0) 
     layout.addWidget(self.button,0,1) 


     self.timer = QTimer(self.label) 
     self.timer.setInterval(1000) 
     self.timer.timeout.connect(self.displayTime) 
     self.timer.start() 

    def displayTime(self): 
     self.label.setText(datetime.now().strftime('%Y-%m-%d %H:%M:%S')) 


if __name__ == "__main__": 
    app = QApplication(sys.argv) 
    dialog = feedingTime() 
    dialog.show() 
    sys.exit(app.exec_()) 

回答

0

你忘了你的布局:)

... 
layout.addWidget(self.label,0,0) 
layout.addWidget(self.button,0,1) 
self.setLayout(layout) 
+0

谢谢!拉出我的头发一秒钟。不能相信我错过了那部分。 :) – xrefor