pyqt如何用状态栏显示点击按键停止时长记录代码
时间: 2024-03-10 19:43:33 浏览: 57
PyQt4编程之让状态栏显示信息的方法
您可以使用PyQt中的QStatusBar类来实现这个功能。具体的步骤如下:
1. 创建一个QStatusBar对象,将其作为主窗口的状态栏;
2. 在主窗口中创建一个计时器,记录停止时长;
3. 在按键的槽函数中,启动或停止计时器,并且在状态栏中显示停止时长。
下面是一个简单的示例代码:
```python
from PyQt5.QtWidgets import QMainWindow, QApplication, QStatusBar, QPushButton
from PyQt5.QtCore import QTimer, QTime
class MainWindow(QMainWindow):
def __init__(self):
super().__init__()
# 创建状态栏
self.statusBar = QStatusBar()
self.setStatusBar(self.statusBar)
# 创建计时器
self.timer = QTimer()
self.timer.timeout.connect(self.updateTimer)
self.time = QTime(0, 0, 0)
# 创建按键
self.button = QPushButton("Start/Stop")
self.button.clicked.connect(self.toggleTimer)
self.setCentralWidget(self.button)
def toggleTimer(self):
if self.timer.isActive():
self.timer.stop()
self.statusBar.showMessage("Stopped at " + self.time.toString("hh:mm:ss"))
else:
self.timer.start(1000)
self.statusBar.showMessage("Started")
def updateTimer(self):
self.time = self.time.addSecs(1)
if __name__ == '__main__':
app = QApplication([])
window = MainWindow()
window.show()
app.exec_()
```
在这个例子中,我们创建了一个主窗口,其中包含了一个按键和一个状态栏。当按键被点击时,我们启动或停止计时器,并且在状态栏中显示相应的信息。计时器每秒钟触发一次,更新时间。您可以根据自己的需求修改代码,实现您所需要的功能。
阅读全文