QPushButton 是 PyQt5 库中用于创建按钮的类。它可以在 Python 代码中创建一个可点击的按钮,供用户进行交互。下面将介绍 QPushButton 的使用方法。

1. 创建按钮

首先,需要从 PyQt5 库中导入 QPushButton 类。然后,可以使用 QPushButton 构造函数创建一个按钮。

<span aria-hidden="true" class="line-numbers-rows"><span>1</span></span>
Plain text

例子:

import sys
from PyQt5.QtWidgets import QApplication, QWidget, QPushButton

app = QApplication(sys.argv)
window = QWidget()
button = QPushButton("Click me", window)
button.resize(100, 50)
window.setGeometry(100, 100, 300, 200)
window.show()

sys.exit(app.exec_())
Plain text

这个例子创建了一个应用程序窗口和一个名为 "Click me" 的按钮。按钮被添加到窗口中,并且通过 resize() 函数设置了按钮的大小。

2. 添加点击事件

要为按钮添加点击事件,可以使用 QPushButton 的 clicked 信号。通过将一个函数与 clicked 信号连接,当按钮被点击时,函数将被触发。

<span aria-hidden="true" class="line-numbers-rows"><span>1</span></span>
Plain text

例子:

import sys
from PyQt5.QtWidgets import QApplication, QWidget, QPushButton

def on_button_clicked():
    print("Button clicked")

app = QApplication(sys.argv)
window = QWidget()
button = QPushButton("Click me", window)
button.clicked.connect(on_button_clicked)
window.setGeometry(100, 100, 300, 200)
window.show()

sys.exit(app.exec_())
Plain text

在这个例子中,当按钮被点击时,on_button_clicked 函数将被调用,输出 "Button clicked"。

3. 修改按钮属性

QPushButton 提供了一系列的方法来修改按钮的属性。一些常见的属性如下:

<span aria-hidden="true" class="line-numbers-rows"><span>1</span></span>
Plain text

例子:

import sys
from PyQt5.QtWidgets import QApplication, QWidget, QPushButton

app = QApplication(sys.argv)
window = QWidget()
button = QPushButton("Click me", window)
button.resize(100, 50)
button.setStyleSheet("background-color: red; color: white; font-size: 20px;")
button.setEnabled(False)
window.setGeometry(100, 100, 300, 200)
window.show()

sys.exit(app.exec_())
Plain text

在这个例子中,通过 resize() 方法设置按钮的大小,使用 setStyleSheet() 方法修改按钮的样式,使用 setEnabled() 方法禁用按钮。

4. 按钮图标

QPushButton 还可以添加图标。可以使用 QIcon 类来创建一个图标对象,然后使用 setIcon() 方法将图标设置给按钮。

<span aria-hidden="true" class="line-numbers-rows"><span>1</span></span>
Plain text

例子:

import sys
from PyQt5.QtWidgets import QApplication, QWidget, QPushButton
from PyQt5.QtGui import QIcon

app = QApplication(sys.argv)
window = QWidget()

button = QPushButton(window)
button.setIcon(QIcon("icon.png"))
button.setIconSize(QtCore.QSize(24, 24))
button.resize(button.iconSize().width() + 20, button.iconSize().height() + 20)
window.setGeometry(100, 100, 300, 200)
window.show()

sys.exit(app.exec_())
Plain text

在这个例子中,使用 QIcon 类创建了一个图标对象,并通过 setIcon() 方法设置给按钮。通过 setIconSize() 方法设置图标的大小,并根据图标的大小重新调整了按钮的大小。