上一篇簡單的應用了 QTimer 來做計時器, 再來我們增加兩了 button : Start , Stop
當按Start 開始計數, 和下stop 就停止
很簡單我們只要把 timer.start 與 timer.stop 加入 button 的 slot function 中即可
import sys
from PyQt5.QtWidgets import QApplication, QMainWindow, QLabel, QGridLayout, QWidget,QPushButton
from PyQt5.QtGui import QPixmap, QImage,QFont
from PyQt5.QtCore import QTimer
class window(QWidget):
def __init__(self):
super().__init__()
self.label = QLabel(self)
self.label.setText("0")
self.label.setGeometry(300,100,200,200)
self.label.setFont(QFont("Roman times",100,QFont.Bold))
self.setGeometry(500,300,700,500)
self.setWindowTitle("PyQT Timer Demo")
self.timer=QTimer(self)
self.timer.timeout.connect(self.run)
# self.timer.start(1000)
self.total = 0
#add start Btn
self.startBtn = QPushButton(self)
self.stopBtn = QPushButton(self)
self.startBtn.clicked.connect(self.startCount)
self.startBtn.setGeometry(50,400,100,50)
self.startBtn.setText("Start")
self.stopBtn.clicked.connect(self.stopCount)
self.stopBtn.setGeometry(500,400,100,50)
self.stopBtn.setText("Stop")
#Start the Timer
def startCount(self):
self.timer.start(1000)
# Stop the Timer
def stopCount(self):
self.timer.stop()
def run(self):
self.label.setText(str(self.total))
self.total+=1
if __name__ == '__main__':
app = QApplication(sys.argv)
ex = window()
ex.show()
sys.exit(app.exec_())
2019年1月30日 星期三
訂閱:
張貼留言 (Atom)
ChartGPT 學 python 很強喔
ChartGPT 最近很紅 , 前一陣子有一些小 module 本來想 google 一下 語法 但發現用 chartGPT 直接請他給 sample code 反而較快 所以只要你有基本 知識 ChartGPT 可以加速你的開發 好用喔
-
按鈕(Buttons) 是 GUI 中很常用到的元件 按鈕的建置跟上一篇提到很相識, 但多了一個連動的概念以 PyQT 來說就是Signals and Slot (訊號與槽) 葉就是說當我按了一個 Button ( 發射一個訊號) 要執行哪個動作 (到哪個槽) ...
-
讀取 IP Cameras 的方法非常簡單 可以直接使用 Open CV package import cv2 # ip camera 的擷取路徑 URL = "rtsp://admin:admin@192.168.1.1/1" # 建立 V...
-
上一篇有介紹到 Qcalendar, 但並沒有使用 Class 來定義主視窗 , 這篇就來介紹如何使用 Class 定義主視窗, 其實 code 跟function 差不多 基本概念很間單, 我們先定義一個主視窗的 class . 這個class 繼承QWidget, 或...
沒有留言:
張貼留言