发布时间:2025-12-11 01:46:06 浏览次数:2
QPushButton是一个常用的按钮控件,用于触发各种操作。QFocusFrame是一个用于显示焦点的控件,通常用于将焦点框显示在QWidget周围。
QPushButton的常用方法和信号包括:
setText():设置按钮的文本内容。
setIcon():设置按钮的图标。
setCheckable():设置按钮是否可选中。
isChecked():返回按钮是否被选中。
clicked():按钮被点击时发出的信号。
QFocusFrame的常用方法和信号包括:
setWidget():设置焦点框所关联的QWidget。
setFrameShadow():设置焦点框的阴影样式。
focusInEvent():焦点框获得焦点时触发的事件。
focusOutEvent():焦点框失去焦点时触发的事件。
使用QPushButton和QFocusFrame的示例代码如下:
from PyQt5.QtWidgets import QApplication, QMainWindow, QPushButton, QFocusFrameclass MainWindow(QMainWindow):def __init__(self):super().__init__()self.setWindowTitle("Button and Focus Frame Example")self.button = QPushButton("Click me", self)self.button.setGeometry(50, 50, 100, 50)self.button.clicked.connect(self.buttonClicked)self.focusFrame = QFocusFrame(self)self.focusFrame.setWidget(self.button)self.focusFrame.setGeometry(45, 45, 110, 60)self.focusFrame.focusInEvent = self.focusInEventself.focusFrame.focusOutEvent = self.focusOutEventdef buttonClicked(self):print("Button clicked")def focusInEvent(self, event):print("Focus in")def focusOutEvent(self, event):print("Focus out")if __name__ == "__main__":app = QApplication([])window = MainWindow()window.show()app.exec_()该示例创建了一个主窗口,其中包含一个QPushButton和一个QFocusFrame。当按钮被点击时,会打印出"Button clicked"。当焦点框获得或失去焦点时,会打印出"Focus in"或"Focus out"。