Qt之QPushButton

简介: 简述前面章节我们分享过Qt之QAbstractButton,讲解了QAbstractButton的基本用法,本节着重讲解QPushButton。简述常用状态效果源码QSS更多参考关于QPushButton的介绍,主要涉及setAutoDefault、setDefault、setMenu,前两个比较复杂,牵扯源码分析,这里暂不讲解,后

简述

前面章节我们分享过Qt之QAbstractButton,讲解了QAbstractButton的基本用法,本节着重讲解QPushButton。

关于QPushButton的介绍,主要涉及setAutoDefault、setDefault、setMenu,前两个比较复杂,牵扯源码分析,这里暂不讲解,后面我会专门写一篇文章来说明,下面我们主要介绍按钮如何设置菜单。

常用状态

效果

这里写图片描述

源码

// 菜单
QMenu *pMenu = new QMenu(this);
pMenu->addAction(QString::fromLocal8Bit("设置"));
pMenu->addAction(QString::fromLocal8Bit("版本检测"));
pMenu->addSeparator();
pMenu->addAction(QString::fromLocal8Bit("关于我们"));
pMenu->addAction(QString::fromLocal8Bit("退出"));

// 按钮
QPushButton *pButton = new QPushButton(this);
pButton->setText(QString::fromLocal8Bit("主菜单"));

// 设置菜单
pButton->setMenu(pMenu);

QSS

默认情况下,按钮的文本居中显示,可以通过text-align来设置对齐方式;menu-indicator则用来设置下拉三角的样式,如果不想显示三角图标,可以通过image: none来设置。

QPushButton {
        /* 水平居左、垂直居中 */
        text-align: left center;
        padding-left: 3px;
}
QPushButton::menu-indicator {
        subcontrol-position: right center;
        subcontrol-origin: padding;
        padding-right: 3px;
        /* image: none; */
}

更多参考

目录
相关文章
|
5月前
|
数据安全/隐私保护
22 QT - QLineEdit
22 QT - QLineEdit
26 0
|
5月前
|
存储 前端开发 Cloud Native
C++Qt QSS要注意的坑
C++Qt QSS要注意的坑
|
5月前
|
存储 C++
14 QT - QMainWindow
14 QT - QMainWindow
26 0
|
6月前
|
前端开发 数据可视化 C++
Qt 之 QWidget QLabel
Qt 之 QWidget QLabel
41 0
|
5月前
21 QT - QLabel控件使用
21 QT - QLabel控件使用
27 0
|
11月前
Qt之按钮(QPushButton)
Qt之按钮(QPushButton)
164 0
|
数据安全/隐私保护 C++
Qt 5——常用控件(QLable、QLineEdit、)
Qt 5——常用控件(QLable、QLineEdit、)
369 0
Qt 5——常用控件(QLable、QLineEdit、)
|
设计模式
【QT】QT布局管理器
【QT】QT布局管理器
【QT】QT布局管理器
Qt之QSS(QTreeView)
简述 QTreeView 作为一个树形控件,我们经常用到,只要对样式熟悉,可以做出特别漂亮的特效。 简述 自定义 QTreeView 指示器 整行拓展 自定义 QTreeView 交替行的背景色可以使用下面样式代码来定义: QTreeView { alternate-background-color: yellow; } 当鼠标划过
3755 0