<h2>在数字时钟文件.py在</h2>
<pre><code>from PyQt5.QtCore import QTime, QTimer
from PyQt5.QtWidgets import QApplication, QLCDNumber
class DigitalClock(QLCDNumber):
def __init__(self, parent=None):
super(DigitalClock, self).__init__(parent)
self.setSegmentStyle(QLCDNumber.Filled)
self.setDigitCount(10)
timer = QTimer(self)
timer.timeout.connect(self.showTime)
timer.start(1000)
self.showTime()
self.setWindowTitle("Digital Clock")
self.resize(150, 60)
def showTime(self):
time = QTime.currentTime()
text = time.toString('hh:mm:ss')
if (time.second() % 2) == 0:
text = text[:2] + ' ' + text[3:5]+' '+text[6:]
self.display(text)
if __name__ == '__main__':
import sys
app = QApplication(sys.argv)
clock = DigitalClock()
clock.show()
sys.exit(app.exec_())
</code></pre>
<h2>在生成UI.py(来自QtDesigner)</h2>
^{pr2}$
<h2>在主.py在</h2>
<pre><code>from DigitalClockFile import DigitalClock
from generatedUI import Ui_mainWindow
from PyQt5.QtCore import QTime, QTimer
from PyQt5.QtWidgets import QApplication, QLCDNumber
from PyQt5 import QtWidgets,QtCore
class transformedUI(Ui_mainWindow):
def __init__(self):
super(transformedUI,self).__init__()
def setupUi(self,mainWindow):
super(transformedUI,self).setupUi(mainWindow)
self.DigitalClock=DigitalClock(self.centralwidget)
self.DigitalClock.setGeometry(QtCore.QRect(110, 190, 200, 100))
if __name__ == "__main__":
import sys
app = QtWidgets.QApplication(sys.argv)
mainWindow = QtWidgets.QMainWindow()
ui = transformedUI()
ui.setupUi(mainWindow)
mainWindow.show()
sys.exit(app.exec_())
</code></pre>
<p>把这三个文件都加起来目录。自从您已经实现了DigitalClock,不要在这个UI中添加时钟,只需继承QtDEsigner生成的类,并将您的时钟添加到继承的变形金刚.py只需运行主.py会达到预期的效果任务。希望这有帮助</p>