QPushButton是Qt Widgets模块中的一个基本控件,用于提供可点击的按钮。它是用户界面中最为常见和常用的控件之一,通过点击按钮,用户可以触发特定的应用程序操作。
重要方法
- QPushButton(const QIcon &icon, const QString &text, QWidget *parent = nullptr):带图标和文本的构造函数。
- QPushButton(const QString &text, QWidget *parent = nullptr):带文本的构造函数。
- QPushButton(QWidget *parent = nullptr):构造函数,创建一个新的按钮。
setText(const QString &text)
:设置按钮上显示的文本。setIcon(const QIcon &icon)
:设置按钮上显示的图标。setIconSize(const QSize &size)
:设置图标的显示大小。
setCheckable(bool checkable)
:设置按钮是否可以被选中(即切换状态)。setChecked(bool checked)
:设置按钮的选中状态。isChecked()
:返回按钮当前是否被选中。
setEnabled(bool enabled)
:启用或禁用按钮。isEnabled()
:检查按钮是否可用。
setStyleSheet(const QString &style)
:应用样式表,自定义按钮外观。setFlat(bool flat)
:设置按钮是否为平面按钮,去掉边框和阴影效果。
clicked()
:发出信号,表示按钮被点击,可以连接到自定义槽以处理点击事件。- void pressed():按钮被按下时发射的信号。
- void released():按钮被释放时发射的信号。
- void toggled(bool checked):这个信号在按钮的选中状态(checked state)发生变化时被发射。
#include <QApplication>
#include <QPushButton>
#include <QMessageBox>
int main(int argc, char *argv[]) {
QApplication app(argc, argv);
QPushButton button("Click Me");
button.setIcon(QIcon("icon.png")); // 假设有一个图标文件
button.setCheckable(true); // 设置为可切换状态
// 连接 clicked 信号
QObject::connect(&button, &QPushButton::clicked, [&button]() {
if (button.isChecked()) {
QMessageBox::information(nullptr, "Message", "Button is Checked!");
} else {
QMessageBox::information(nullptr, "Message", "Button is Unchecked!");
}
});
button.resize(200, 100);
button.show();
return app.exec();
}
觉得有帮助的话,打赏一下呗。。