要監控 Python 中 QPushButton 的狀態,您可以使用信號和槽機制。在 PyQt5 中,QPushButton 提供了一些信號,例如:clicked、pressed、released 和 toggled。您可以將這些信號連接到自定義的槽函數以監控按鈕狀態。
以下是一個簡單的示例,展示了如何在 PyQt5 中監控 QPushButton 的狀態:
import sys
from PyQt5.QtWidgets import QApplication, QWidget, QVBoxLayout, QPushButton
class MainWindow(QWidget):
def __init__(self):
super().__init__()
# 創建 QPushButton
self.button = QPushButton('Click me', self)
# 連接信號到槽函數
self.button.clicked.connect(self.on_button_clicked)
self.button.pressed.connect(self.on_button_pressed)
self.button.released.connect(self.on_button_released)
self.button.toggled.connect(self.on_button_toggled)
# 創建布局并添加 QPushButton
layout = QVBoxLayout()
layout.addWidget(self.button)
self.setLayout(layout)
def on_button_clicked(self):
print('Button clicked')
def on_button_pressed(self):
print('Button pressed')
def on_button_released(self):
print('Button released')
def on_button_toggled(self, checked):
if checked:
print('Button toggled on')
else:
print('Button toggled off')
if __name__ == '__main__':
app = QApplication(sys.argv)
window = MainWindow()
window.show()
sys.exit(app.exec_())
在這個示例中,我們創建了一個名為 MainWindow 的類,它繼承自 QWidget。我們創建了一個 QPushButton 實例,并將其信號連接到自定義的槽函數。當按鈕被點擊、按下、釋放或切換狀態時,相應的槽函數將被調用,并打印出相應的消息。