📅  最后修改于: 2023-12-03 14:45:50.993000             🧑  作者: Mango
在 PyQt5 中,我们可以使用 QCheckBox 组件来创建复选框。当复选框被选中时,我们可以根据需要在用户界面中更改外观或执行某些操作。 在本文中,我们将学习如何在按下复选框时更改其外观。
在开始进行示例代码之前,我们需要对我们的 PyQt5 应用程序进行一些准备工作。 首先,我们需要导入 PyQt5 库以及相应的模块:
from PyQt5.QtWidgets import QApplication, QWidget, QCheckBox
from PyQt5.QtCore import Qt
然后,我们需要创建一个 QWidget 对象和 QCheckBox 对象:
class App(QWidget):
def __init__(self):
super().__init__()
self.title = 'PyQt5 – 按下时将皮肤设置为 Checked CheckBox'
self.left = 10
self.top = 10
self.width = 320
self.height = 200
self.initUI()
def initUI(self):
self.setWindowTitle(self.title)
self.setGeometry(self.left, self.top, self.width, self.height)
self.checkBox = QCheckBox('选我!', self)
self.checkBox.move(50,50)
self.checkBox.stateChanged.connect(self.onChange)
在上面的代码中,我们创建了一个名为 “App” 的类,继承自 QWidget。在类的 init() 方法中,我们设置了应用程序的标题、左上角的评估值、宽度和高度,并调用了 initUI() 函数。
在 initUI() 函数中,我们创建了一个 QCheckBox 对象,并在窗口中添加了一个文本标签。
我们还将与 stateChanged 信号连接的 onChange() 函数添加到复选框。
接下来,让我们来编写 onChange() 函数。 在 onChange() 函数中,我们将根据复选框是否选中来更改应用程序的皮肤。在这个例子中,我们仅更改了应用程序的背景颜色。
def onChange(self, state):
if state == Qt.Checked:
self.setStyleSheet("background-color: green")
else:
self.setStyleSheet("")
在上面的代码中,我们使用了 PyQt5 的 setStyleSheet() 函数来更改 QGraphicsView 的外表。 如果复选框被选中,则我们将应用程序的背景颜色更改为绿色。 如果未选中,则我们将应用程序恢复为默认状态。
from PyQt5.QtWidgets import QApplication, QWidget, QCheckBox
from PyQt5.QtCore import Qt
class App(QWidget):
def __init__(self):
super().__init__()
self.title = 'PyQt5 – 按下时将皮肤设置为 Checked CheckBox'
self.left = 10
self.top = 10
self.width = 320
self.height = 200
self.initUI()
def initUI(self):
self.setWindowTitle(self.title)
self.setGeometry(self.left, self.top, self.width, self.height)
self.checkBox = QCheckBox('选我!', self)
self.checkBox.move(50,50)
self.checkBox.stateChanged.connect(self.onChange)
def onChange(self, state):
if state == Qt.Checked:
self.setStyleSheet("background-color: green")
else:
self.setStyleSheet("")
if __name__ == '__main__':
app = QApplication(sys.argv)
ex = App()
ex.show()
sys.exit(app.exec_())
在上面的代码中,我们创建了一个名为 “App” 的类,继承自 QWidget。我们还创建了一个 QCheckBox,将其添加到窗口,并将与 stateChanged 信号连接的 onChange() 函数添加到复选框。
在 onChange() 函数中,我们根据复选框的状态更改了应用程序的皮肤。 我们使用 PyQt5 的 setStyleSheet() 函数来更改 QGraphicsView 的外表。
最后,我们创建一个 QApplication 对象,实例化 App 类,并显示对象。 最后,我们调用 sys.exit() 函数并将其返回值传递给 app.exec_() 函数,以保持程序在运行状态。
本文中介绍了如何在 PyQt5 中更改外观,特别是如何在 QCheckBox 选中时更改皮肤。 在你的 PyQt5 应用程序中使用这些技术,你可以更轻松地为你的用户界面添加更多的交互性和个性化。