qt 标准图标的使用

效果图如下:
在这里插入图片描述

#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <QDebug>
#include <QRadioButton>
#include <QHBoxLayout>
#include <QCheckBox>


MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
    ui->setupUi(this);

    QStyle::StandardPixmap a[] ={
        QStyle::SP_TitleBarMenuButton,
        QStyle::SP_TitleBarMinButton,
        QStyle::SP_TitleBarMaxButton,
        QStyle::SP_TitleBarCloseButton,
        QStyle::SP_TitleBarNormalButton,
        QStyle::SP_TitleBarShadeButton,
        QStyle::SP_TitleBarUnshadeButton,
        QStyle::SP_TitleBarContextHelpButton,
        QStyle::SP_DockWidgetCloseButton,
        QStyle::SP_MessageBoxInformation,
        QStyle::SP_MessageBoxWarning,
        QStyle::SP_MessageBoxCritical,
        QStyle::SP_MessageBoxQuestion,
        QStyle::SP_DesktopIcon,
        QStyle::SP_TrashIcon,
        QStyle::SP_ComputerIcon,
        QStyle::SP_DriveFDIcon,
        QStyle::SP_DriveHDIcon,
        QStyle::SP_DriveCDIcon,
        QStyle::SP_DriveDVDIcon,
        QStyle::SP_DriveNetIcon,
        QStyle::SP_DirOpenIcon,
        QStyle::SP_DirClosedIcon,
        QStyle::SP_DirLinkIcon,
        QStyle::SP_DirLinkOpenIcon,
        QStyle::SP_FileIcon,
        QStyle::SP_FileLinkIcon,
        QStyle::SP_ToolBarHorizontalExtensionButton,
        QStyle::SP_ToolBarVerticalExtensionButton,
        QStyle::SP_FileDialogStart,
        QStyle::SP_FileDialogEnd,
        QStyle::SP_FileDialogToParent,
        QStyle::SP_FileDialogNewFolder,
        QStyle::SP_FileDialogDetailedView,
        QStyle::SP_FileDialogInfoView,
        QStyle::SP_FileDialogContentsView,
        QStyle::SP_FileDialogListView,
        QStyle::SP_FileDialogBack,
        QStyle::SP_DirIcon,
        QStyle::SP_DialogOkButton,
        QStyle::SP_DialogCancelButton,
        QStyle::SP_DialogHelpButton,
        QStyle::SP_DialogOpenButton,
        QStyle::SP_DialogSaveButton,
        QStyle::SP_DialogCloseButton,
        QStyle::SP_DialogApplyButton,
        QStyle::SP_DialogResetButton,
        QStyle::SP_DialogDiscardButton,
        QStyle::SP_DialogYesButton,
        QStyle::SP_DialogNoButton,
        QStyle::SP_ArrowUp,
        QStyle::SP_ArrowDown,
        QStyle::SP_ArrowLeft,
        QStyle::SP_ArrowRight,
        QStyle::SP_ArrowBack,
        QStyle::SP_ArrowForward,
        QStyle::SP_DirHomeIcon,
        QStyle::SP_CommandLink,
        QStyle::SP_VistaShield,
        QStyle::SP_BrowserReload,
        QStyle::SP_BrowserStop,
        QStyle::SP_MediaPlay,
        QStyle::SP_MediaStop,
        QStyle::SP_MediaPause,
        QStyle::SP_MediaSkipForward,
        QStyle::SP_MediaSkipBackward,
        QStyle::SP_MediaSeekForward,
        QStyle::SP_MediaSeekBackward,
        QStyle::SP_MediaVolume,
        QStyle::SP_MediaVolumeMuted,
        QStyle::SP_LineEditClearButton};

    const int nPerColCount = 6;
    auto nIconCount = sizeof a / sizeof a[0];

    QWidget *w = new QWidget(this);
    w->setGeometry(0,0,this->width(), this->height());

    QGridLayout *layout = new QGridLayout(w);
    for (auto nIconIndex = 0; nIconIndex < nIconCount; ++nIconIndex)
    {
        QPushButton* pBtn = new QPushButton();
        auto icon = this->style()->standardIcon(a[nIconIndex]);
        pBtn->setIcon(icon);
        int nColIndex = nIconIndex % nPerColCount;
        int nRowInex = nIconIndex / nPerColCount;
        layout->addWidget(pBtn, nRowInex, nColIndex);
    }
}

MainWindow::~MainWindow()
{
    delete ui;
}
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值