Qt怎么设置按钮样式
发表于:2025-02-03 作者:千家信息网编辑
千家信息网最后更新 2025年02月03日,本篇内容主要讲解"Qt怎么设置按钮样式",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"Qt怎么设置按钮样式"吧!函数名 //设置按钮样式 sta
千家信息网最后更新 2025年02月03日Qt怎么设置按钮样式
本篇内容主要讲解"Qt怎么设置按钮样式",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"Qt怎么设置按钮样式"吧!
函数名
//设置按钮样式 static QString setPushButtonQss(QPushButton *btn, //按钮对象 int radius = 5, //圆角半径 int padding = 8, //间距 const QString &normalColor = "#34495E", //正常颜色 const QString &normalTextColor = "#FFFFFF", //文字颜色 const QString &hoverColor = "#4E6D8C", //悬停颜色 const QString &hoverTextColor = "#F0F0F0", //悬停文字颜色 const QString &pressedColor = "#2D3E50", //按下颜色 const QString &pressedTextColor = "#B8C6D1"); //按下文字颜色 //设置文本框样式 static QString setLineEditQss(QLineEdit *txt, //文本框对象 int radius = 3, //圆角半径 int borderWidth = 2, //边框大小 const QString &normalColor = "#DCE4EC", //正常颜色 const QString &focusColor = "#34495E"); //选中颜色 //设置进度条样式 static QString setProgressBarQss(QProgressBar *bar, int barHeight = 8, //进度条高度 int barRadius = 5, //进度条半径 int fontSize = 9, //文字字号 const QString &normalColor = "#E8EDF2", //正常颜色 const QString &chunkColor = "#E74C3C"); //进度颜色 //设置滑块条样式 static QString setSliderQss(QSlider *slider, //滑动条对象 int sliderHeight = 8, //滑动条高度 const QString &normalColor = "#E8EDF2", //正常颜色 const QString &grooveColor = "#1ABC9C", //滑块颜色 const QString &handleBorderColor = "#1ABC9C", //指示器边框颜色 const QString &handleColor = "#FFFFFF", //指示器颜色 const QString &textColor = "#000000"); //文字颜色 //设置单选框样式 static QString setRadioButtonQss(QRadioButton *rbtn, //单选框对象 int indicatorRadius = 8, //指示器圆角角度 const QString &normalColor = "#D7DBDE", //正常颜色 const QString &checkColor = "#34495E"); //选中颜色 //设置滚动条样式 static QString setScrollBarQss(QWidget *scroll, //滚动条对象 int radius = 6, //圆角角度 int min = 120, //指示器最小长度 int max = 12, //滚动条最大长度 const QString &bgColor = "#606060", //背景色 const QString &handleNormalColor = "#34495E", //指示器正常颜色 const QString &handleHoverColor = "#1ABC9C", //指示器悬停颜色 const QString &handlePressedColor = "#E74C3C"); //指示器按下颜色
函数体
QString QUIHelper::setPushButtonQss(QPushButton *btn, int radius, int padding, const QString &normalColor, const QString &normalTextColor, const QString &hoverColor, const QString &hoverTextColor, const QString &pressedColor, const QString &pressedTextColor){ QStringList list; list.append(QString("QPushButton{border-style:none;padding:%1px;border-radius:%2px;color:%3;background:%4;}") .arg(padding).arg(radius).arg(normalTextColor).arg(normalColor)); list.append(QString("QPushButton:hover{color:%1;background:%2;}") .arg(hoverTextColor).arg(hoverColor)); list.append(QString("QPushButton:pressed{color:%1;background:%2;}") .arg(pressedTextColor).arg(pressedColor)); QString qss = list.join(""); btn->setStyleSheet(qss); return qss;}QString QUIHelper::setLineEditQss(QLineEdit *txt, int radius, int borderWidth, const QString &normalColor, const QString &focusColor){ QStringList list; list.append(QString("QLineEdit{border-style:none;padding:3px;border-radius:%1px;border:%2px solid %3;}") .arg(radius).arg(borderWidth).arg(normalColor)); list.append(QString("QLineEdit:focus{border:%1px solid %2;}") .arg(borderWidth).arg(focusColor)); QString qss = list.join(""); txt->setStyleSheet(qss); return qss;}QString QUIHelper::setProgressBarQss(QProgressBar *bar, int barHeight, int barRadius, int fontSize, const QString &normalColor, const QString &chunkColor){ QStringList list; list.append(QString("QProgressBar{font:%1pt;background:%2;max-height:%3px;border-radius:%4px;text-align:center;border:1px solid %2;}") .arg(fontSize).arg(normalColor).arg(barHeight).arg(barRadius)); list.append(QString("QProgressBar:chunk{border-radius:%2px;background-color:%1;}") .arg(chunkColor).arg(barRadius)); QString qss = list.join(""); bar->setStyleSheet(qss); return qss;}QString QUIHelper::setSliderQss(QSlider *slider, int sliderHeight, const QString &normalColor, const QString &grooveColor, const QString &handleBorderColor, const QString &handleColor, const QString &textColor){ int sliderRadius = sliderHeight / 2; int handleSize = (sliderHeight * 3) / 2 + (sliderHeight / 5); int handleRadius = handleSize / 2; int handleOffset = handleRadius / 2; QStringList list; int handleWidth = handleSize + sliderHeight / 5 - 1; list.append(QString("QSlider::horizontal{min-height:%1px;color:%2;}").arg(sliderHeight * 2).arg(textColor)); list.append(QString("QSlider::groove:horizontal{background:%1;height:%2px;border-radius:%3px;}") .arg(normalColor).arg(sliderHeight).arg(sliderRadius)); list.append(QString("QSlider::add-page:horizontal{background:%1;height:%2px;border-radius:%3px;}") .arg(normalColor).arg(sliderHeight).arg(sliderRadius)); list.append(QString("QSlider::sub-page:horizontal{background:%1;height:%2px;border-radius:%3px;}") .arg(grooveColor).arg(sliderHeight).arg(sliderRadius)); list.append(QString("QSlider::handle:horizontal{width:%3px;margin-top:-%4px;margin-bottom:-%4px;border-radius:%5px;" "background:qradialgradient(spread:pad,cx:0.5,cy:0.5,radius:0.5,fx:0.5,fy:0.5,stop:0.6 %1,stop:0.8 %2);}") .arg(handleColor).arg(handleBorderColor).arg(handleWidth).arg(handleOffset).arg(handleRadius)); //偏移一个像素 handleWidth = handleSize + sliderHeight / 5; list.append(QString("QSlider::vertical{min-width:%1px;color:%2;}").arg(sliderHeight * 2).arg(textColor)); list.append(QString("QSlider::groove:vertical{background:%1;width:%2px;border-radius:%3px;}") .arg(normalColor).arg(sliderHeight).arg(sliderRadius)); list.append(QString("QSlider::add-page:vertical{background:%1;width:%2px;border-radius:%3px;}") .arg(grooveColor).arg(sliderHeight).arg(sliderRadius)); list.append(QString("QSlider::sub-page:vertical{background:%1;width:%2px;border-radius:%3px;}") .arg(normalColor).arg(sliderHeight).arg(sliderRadius)); list.append(QString("QSlider::handle:vertical{height:%3px;margin-left:-%4px;margin-right:-%4px;border-radius:%5px;" "background:qradialgradient(spread:pad,cx:0.5,cy:0.5,radius:0.5,fx:0.5,fy:0.5,stop:0.6 %1,stop:0.8 %2);}") .arg(handleColor).arg(handleBorderColor).arg(handleWidth).arg(handleOffset).arg(handleRadius)); QString qss = list.join(""); slider->setStyleSheet(qss); return qss;}QString QUIHelper::setRadioButtonQss(QRadioButton *rbtn, int indicatorRadius, const QString &normalColor, const QString &checkColor){ int indicatorWidth = indicatorRadius * 2; QStringList list; list.append(QString("QRadioButton::indicator{border-radius:%1px;width:%2px;height:%2px;}") .arg(indicatorRadius).arg(indicatorWidth)); list.append(QString("QRadioButton::indicator::unchecked{background:qradialgradient(spread:pad,cx:0.5,cy:0.5,radius:0.5,fx:0.5,fy:0.5," "stop:0.6 #FFFFFF,stop:0.7 %1);}").arg(normalColor)); list.append(QString("QRadioButton::indicator::checked{background:qradialgradient(spread:pad,cx:0.5,cy:0.5,radius:0.5,fx:0.5,fy:0.5," "stop:0 %1,stop:0.3 %1,stop:0.4 #FFFFFF,stop:0.6 #FFFFFF,stop:0.7 %1);}").arg(checkColor)); QString qss = list.join(""); rbtn->setStyleSheet(qss); return qss;}QString QUIHelper::setScrollBarQss(QWidget *scroll, int radius, int min, int max, const QString &bgColor, const QString &handleNormalColor, const QString &handleHoverColor, const QString &handlePressedColor){ //滚动条离背景间隔 int padding = 0; QStringList list; //handle:指示器,滚动条拉动部分 add-page:滚动条拉动时增加的部分 sub-page:滚动条拉动时减少的部分 add-line:递增按钮 sub-line:递减按钮 //横向滚动条部分 list.append(QString("QScrollBar:horizontal{background:%1;padding:%2px;border-radius:%3px;min-height:%4px;max-height:%4px;}") .arg(bgColor).arg(padding).arg(radius).arg(max)); list.append(QString("QScrollBar::handle:horizontal{background:%1;min-width:%2px;border-radius:%3px;}") .arg(handleNormalColor).arg(min).arg(radius)); list.append(QString("QScrollBar::handle:horizontal:hover{background:%1;}") .arg(handleHoverColor)); list.append(QString("QScrollBar::handle:horizontal:pressed{background:%1;}") .arg(handlePressedColor)); list.append(QString("QScrollBar::add-page:horizontal{background:none;}")); list.append(QString("QScrollBar::sub-page:horizontal{background:none;}")); list.append(QString("QScrollBar::add-line:horizontal{background:none;}")); list.append(QString("QScrollBar::sub-line:horizontal{background:none;}")); //纵向滚动条部分 list.append(QString("QScrollBar:vertical{background:%1;padding:%2px;border-radius:%3px;min-width:%4px;max-width:%4px;}") .arg(bgColor).arg(padding).arg(radius).arg(max)); list.append(QString("QScrollBar::handle:vertical{background:%1;min-height:%2px;border-radius:%3px;}") .arg(handleNormalColor).arg(min).arg(radius)); list.append(QString("QScrollBar::handle:vertical:hover{background:%1;}") .arg(handleHoverColor)); list.append(QString("QScrollBar::handle:vertical:pressed{background:%1;}") .arg(handlePressedColor)); list.append(QString("QScrollBar::add-page:vertical{background:none;}")); list.append(QString("QScrollBar::sub-page:vertical{background:none;}")); list.append(QString("QScrollBar::add-line:vertical{background:none;}")); list.append(QString("QScrollBar::sub-line:vertical{background:none;}")); QString qss = list.join(""); scroll->setStyleSheet(qss); return qss;}
到此,相信大家对"Qt怎么设置按钮样式"有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
颜色
样式
指示
指示器
按钮
对象
文字
部分
圆角
进度
半径
内容
函数
文本
背景
角度
边框
长度
高度
学习
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
IMF数据库技术文案
求生之路服务器怎么改角色
数据库二次修改
网络安全等保测评师考试
水星网络安全密匙
暑期网络安全图
无线电监测用的网络技术
阿里云查找数据库DBA
搭建iis服务器
数据库技术哪家好
怎么看服务器专用端口
河北办公系统软件开发
服务器电脑怎么管理
数据库智能优化
巴彦淖尔手机软件开发公司
网游之大数据库
中国网络安全市场 PPT
数据库中给表加一列
网络安全知识讲座信息报道
quartz 整合数据库
大数据用什么数据库6
众恒全华网络技术公司是做什么的
数据库系统安装目录
网络技术应用自主模式答案
什么是地理信息系统的数据库
多媒体与网络技术发展
服务器登录管理员账号和密码
网络安全诈骗手抄报短写句话
软件开发成员的具体分工
网络技术之pki概述