Qt学习笔记-Qt程序切换皮肤
运行截图如下:
首先我们从网上随便搞一个别人写好的QSS(这个东西其实自己写更有意思)
本人自己写的还没完善,为了做这个笔记,先用网上的,
QSS代码如下:
/* === Shared === */
QStackedWidget, QLabel, QPushButton, QRadioButton, QCheckBox,
QGroupBox, QStatusBar, QToolButton, QComboBox, QDialog {background-color: #222222;color: #BBBBBB;font-family: "Segoe UI";
}/* === QWidget === */
QWidget:window {background: #222222;color: #BBBBBB;font-family: "Segoe UI";
}/* === QToolTip === */
QToolTip {background-color: #000000;border: 2px solid #333333;color: yellow;
}/* === QPushButton === */
QPushButton {border: 1px solid #333333;padding: 4px;min-width: 65px;min-height: 12px;
}QPushButton:hover {background-color: #333333;border-color: #444444;
}QPushButton:pressed {background-color: #111111;border-color: #333333;color: yellow;
}QPushButton:disabled {color: #333333;
}/* === Checkable items === */
QCheckBox::indicator, QRadioButton::indicator, QTreeView::indicator {width: 16px;height: 16px;background-color: #111111;border: 1px solid #333333;
}QRadioButton::indicator {border-radius: 8px;
}QCheckBox::indicator::checked, QRadioButton::indicator::checked, QTreeView::indicator::checked {background-color: qradialgradient(cx:0.5, cy:0.5, fx:0.25, fy:0.15, radius:0.3, stop:0 #BBBBBB, stop:1 #111111);
}QCheckBox::indicator:disabled, QRadioButton::indicator:disabled, QTreeView::indicator:disabled {background-color: #444444;
}QCheckBox::indicator::checked:disabled, QRadioButton::indicator::checked:disabled, QTreeView::indicator::checked:disabled {background-color: qradialgradient(cx:0.5, cy:0.5, fx:0.25, fy:0.15, radius:0.3, stop:0 #BBBBBB, stop:1 #444444);
}/* === QComboBox === */
QComboBox {background-color: black;border: 1px solid #333333;color: white;padding:1px 2em 1px 3px;
}QComboBox::drop-down {subcontrol-origin: padding;subcontrol-position: top right;border-left: 1px solid #333333;
}QComboBox::down-arrow {border: 2px solid #333333;width: 6px;height: 6px;background: #5f5f5f;
}/* === QGroupBox === */
QGroupBox {border: 2px solid #333333;margin-top: 2ex;
}QGroupBox::title {color: yellow;subcontrol-origin: margin;subcontrol-position: top left;margin-left: 5px;
}/* === QTabWidget === */
QTabWidget::pane {background: #222222;border: 2px solid #333333;
}/* === QTabBar === */
QTabBar::tab {background: transparent;border: 1px solid #333333;border-bottom: none;color: #BBBBBB;padding-left: 5px;padding-right: 10px;padding-top: 3px;padding-bottom: 3px;
}QTabBar::tab:hover {background-color: #333333;border: 1px solid #444444;border-bottom: none;
}QTabBar::tab:selected {background-color: #111111;border: 1px solid #333333;border-top: 1px solid yellow;border-bottom: none;color: yellow
}/* === QToolBar === */
QToolBar {background-color: #222222;border: none;padding: 1px;
}QToolBar:handle {background: #222222;border-left: 1px dotted yellow;color: #BBBBBB;
}QToolBar::separator {width: 6px;background-color: #222222;
}/* === QToolButton === */
QToolButton {border: 1px solid #333333;margin: 1px;
}QToolButton:hover {background-color: #333333;border: 1px solid #444444;
}QToolButton[popupMode="1"] { /* only for MenuButtonPopup */padding-right: 20px; /* make way for the popup button */
}QToolButton::menu-button {border-left: 1px solid #333333;background: transparent;width: 16px;
}QToolButton::menu-button:hover {border-left: 1px solid #444444;background: transparent;width: 16px;
}QToolButton:checked, QToolButton:pressed {background-color: #111111;color: yellow;
}/* === QMenu === */
QMenu {background-color: black;border: 1px solid gray;color: white;padding: 1px;
}QMenu::item {padding: 2px 25px 2px 20px;border: 1px solid transparent;
}QMenu::item:disabled {color: #666666;
}QMenu::item:selected {border-color: gray;background: #222222;
}QMenu::icon:checked {}QMenu::separator {height: 1px;background: #222222;margin-left: 10px;margin-right: 10px;margin-top: 1px;margin-bottom: 1px;
}QMenu::indicator {width: 13px;height: 13px;
}/* === QMenuBar === */
QMenuBar {background-color: black;color: white;
}QMenuBar::item {background: transparent;
}QMenuBar::item:disabled {color: gray;
}QMenuBar::item:selected {background: #222222;
}QMenuBar::item:pressed {background: #444444;
}/* === QScrollBar:vertical === */
QScrollBar:vertical {background: #111111;width: 16px;margin: 16px 0 16px 0;
}QScrollBar::handle:vertical {background: #555555;min-height: 16px;
}QScrollBar::add-line:vertical {background: #444444;height: 16px;subcontrol-position: bottom;subcontrol-origin: margin;
}QScrollBar::sub-line:vertical {background: #444444;height: 16px;subcontrol-position: top;subcontrol-origin: margin;
}QScrollBar::add-page:vertical, QScrollBar::sub-page:vertical {background: none;
}QScrollBar:up-arrow:vertical, QScrollBar:down-arrow:vertical {border: 2px solid #333333;width: 6px;height: 6px;background: #5f5f5f;
}/* === QScrollBar:horizontal === */
QScrollBar:horizontal {background: #111111;height: 16px;margin: 0 16px 0 16px;
}QScrollBar::handle:horizontal {background: #555555;min-width: 16px;
}QScrollBar::add-line:horizontal {background: #444444;width: 16px;subcontrol-position: right;subcontrol-origin: margin;
}QScrollBar::sub-line:horizontal {background: #444444;width: 16px;subcontrol-position: left;subcontrol-origin: margin;
}QScrollBar::add-page:horizontal, QScrollBar::sub-page:horizontal {background: none;
}QScrollBar:left-arrow:horizontal, QScrollBar:right-arrow:horizontal {border: 2px solid #333333;width: 6px;height: 6px;background: #5f5f5f;
}/* =================== */
QLineEdit, QListView, QTreeView, QTableView, QAbstractSpinBox {background-color: black;color: #BBBBBB;border: 1px solid #333333;
}QAbstractScrollArea, QLineEdit, QTextEdit, QAbstractSpinBox, QComboBox {border-color: #333333;border: 1px solid #333333;}/* === QHeaderView === */
QHeaderView::section {background: #222222;border: 0;color: #BBBBBB;padding: 3px 0 3px 4px;
}/* === QListView === */
QListView::item:hover {background: #333333;
}QListView::item:selected {background: #111111;color: yellow;
}/* === QTableView === */
QTableView::item:hover {background: #333333;
}QTableView::item:hover {background: #111111;color: yellow;
}/* === QTreeView === */
QTreeView::item {background: black;
}QTreeView::item:hover {background: #333333;
}QTreeView::item:selected {background: #111111;color: yellow;
}QTreeView::branch {}QTreeView::branch:has-siblings:adjoins-item {}QTreeView::branch:has-siblings:!adjoins-item {}QTreeView::branch:closed:has-children:has-siblings {}QTreeView::branch:has-children:!has-siblings:closed {}QTreeView::branch:!has-children:!has-siblings:adjoins-item {}QTreeView::branch:open:has-children:has-siblings {}QTreeView::branch:open:has-children:!has-siblings {}/* === Customizations === */
QFrame#infoLabel {border: 1px inset #333333;
}
2.
.QWidget {background-color: beige;
}QToolBar {background-color: beige;
}QDialog, QFileDialog {background-color: beige;
}QTabWidget::pane { /* The tab widget frame */border-top: 2px solid #C2C7CB;
}QTabWidget::tab-bar {left: 5px; /* move to the right by 5px */
}QTabBar, QTabWidget {background-color: beige;
}
QTabBar::tab {background: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1,stop: 0 #E1E1E1, stop: 0.4 #DDDDDD,stop: 0.5 #D8D8D8, stop: 1.0 #D3D3D3);border: 1px solid darkkhaki;border-bottom-color: #C2C7CB; /* same as the pane color */border-top-left-radius: 4px;border-top-right-radius: 4px;min-width: 8ex;padding: 2px;}
QTabBar::tab:selected, QTabBar::tab:hover {background: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1,stop: 0 #fafafa, stop: 0.4 #f4f4f4,stop: 0.5 #e7e7e7, stop: 1.0 #fafafa);
}QTabBar::tab:selected {border-color: #9B9B9B;border-bottom-color: #C2C7CB; /* same as pane color */
}QTabBar::tab:!selected {margin-top: 2px; /* make non-selected tabs look smaller */
}/* Nice Windows-XP-style password character. */
QLineEdit[echoMode="2"] {lineedit-password-character: 9679;
}QHeaderView::section {background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1,stop:0 #616161, stop: 0.5 #505050,stop: 0.6 #434343, stop:1 #656565);color: white;padding-left: 4px;border: 1px solid #6c6c6c;}QHeaderView::section:checked{background-color: red;}/* We provide a min-width and min-height for push buttonsso that they look elegant regardless of the width of the text. */
QPushButton {background-color: palegoldenrod;border-width: 2px;border-color: darkkhaki;border-style: solid;border-radius: 5;padding: 3px;min-width: 9ex;min-height: 2.5ex;
}QPushButton:hover {background-color: khaki;
}/* Increase the padding, so the text is shifted when the button ispressed. */
QPushButton:pressed {padding-left: 5px;padding-top: 5px;background-color: #d0d67c;
}QLabel, QAbstractButton {font: bold;
}/* Mark mandatory fields with a brownish color. */
.mandatory {color: brown;
}/* Bold text on status bar looks awful. */
QStatusBar QLabel {font: normal;
}QStatusBar::item {border-width: 1;border-color: darkkhaki;border-style: solid;border-radius: 2;
}QStackedWidget, QComboBox, QLineEdit, QSpinBox, QTextEdit, QListView, QWebView, QTreeView, QHeaderView {background-color: cornsilk;selection-color: #0a214c; selection-background-color: #C19A6B;
}QListView {show-decoration-selected: 1;
}QListView::item:hover {background-color: wheat;
}/* We reserve 1 pixel space in padding. When we get the focus,we kill the padding and enlarge the border. This makes the itemsglow. */
QLineEdit, QFrame {border-width: 1px;padding: 1px;border-style: solid;border-color: darkkhaki;border-radius: 5px;
}/* As mentioned above, eliminate the padding and increase the border. */
QLineEdit:focus, QFrame:focus {border-width: 3px;padding: 0px;
}/* A QLabel is a QFrame */
QLabel {border: none;padding: 0;background: none;
}/* A QToolTip is a QLabel */
QToolTip {border: 2px solid darkkhaki;padding: 5px;border-radius: 3px;opacity: 200;
}/* Nice to have the background color change when hovered. */
QRadioButton:hover, QCheckBox:hover {background-color: wheat;
}/* Force the dialog's buttons to follow the Windows guidelines. */
QDialogButtonBox {button-layout: 0;
}3.
/*Style by evilworks, 2012-2013. pollux@lavabit.comThis file is Public Domain.
*//* === Shared === */
QStackedWidget, QLabel, QPushButton, QRadioButton, QCheckBox,
QGroupBox, QStatusBar, QToolButton, QComboBox, QDialog, QTabBar {font-family: "Segoe UI";background-color: #888;color: #000;
}/* === QWidget === */
QWidget:window {font-family: 'Segoe UI';background-color: #888;
}/* === QPushButton === */
QPushButton {border: 1px solid #555;padding: 4px;min-width: 65px;min-height: 12px;
}QPushButton:hover {background-color: #999;
}QPushButton:pressed {background-color: #333;border-color: #555;color: #AAA;
}QPushButton:disabled {color: #333333;
}/* === QComboBox === */
QComboBox {background-color: #AAA;border: 1px solid #555;color: black;
}QComboBox::drop-down {subcontrol-origin: padding;subcontrol-position: top right;border-left: 1px solid #333333;
}/* === QGroupBox === */
QGroupBox {border: 1px solid #555;margin-top: 2ex;
}QGroupBox::title {color: black;subcontrol-origin: margin;subcontrol-position: top left; border: 1px solid #555;
}/* === QTabBar === */
QTabBar::tab {border-bottom: none;color: #000;padding: 4px;background-color: #888;border: 1px solid #555;
}QTabBar::tab:hover {background-color: #AAA;
}QTabBar::tab:selected {background-color: #000;color: white;
}/* === QTabWidget === */
QTabWidget::pane {background: #888;border: 1px solid #555;
}/* === QToolBar === */
QToolBar {background: #949494;border: none;padding-left: 0px;padding-right: 0px;margin: 2px;
}QToolBar::separator {width: 1px;margin-left: 3px;margin-right: 3px;background-color: #555;
}/* === QToolButton === */
QToolButton {border: 1px solid #666;margin: 1px;
}QToolButton:hover {background-color: #AAA;
}QToolButton[popupMode="1"] { /* only for MenuButtonPopup */padding-right: 20px; /* make way for the popup button */
}QToolButton::menu-button {border-left: 1px solid #666;background: transparent;width: 16px;
}QToolButton::menu-button:hover {border-left: 1px solid #666;background: transparent;width: 16px;
}QToolButton:checked, QToolButton:pressed {background-color: #000;border: 1px solid #555;color: white;
}/* === QScrollBar:vertical === */
QScrollBar:vertical {width: 16px;margin: 16px 0 16px 0;background: #333;
}QScrollBar::handle:vertical {background: #888;min-height: 16px;border-top: 1px solid #666;border-bottom: 1px solid #666;
}QScrollBar::add-line:vertical {background: #888;height: 16px;subcontrol-position: bottom;subcontrol-origin: margin;
}QScrollBar::sub-line:vertical {background: #888;height: 16px;subcontrol-position: top;subcontrol-origin: margin;
}QScrollBar::add-page:vertical, QScrollBar::sub-page:vertical {background: none;
}/* === QScrollBar:horizontal === */
QScrollBar:horizontal {height: 16px;margin: 0 16px 0 16px;background: #333;
}QScrollBar::handle:horizontal {background: #888;min-width: 16px;border-left: 1px solid #666;border-right: 1px solid #666;
}QScrollBar::add-line:horizontal {background: #888;width: 16px;subcontrol-position: right;subcontrol-origin: margin;
}QScrollBar::sub-line:horizontal {background: #888;width: 16px;subcontrol-position: left;subcontrol-origin: margin;
}QScrollBar::add-page:horizontal, QScrollBar::sub-page:horizontal {background: none;
}/* === QMenu === */
QMenu {background-color: black;border: 1px solid gray;color: white;padding: 1px;
}QMenu::item {padding: 2px 25px 2px 20px;border: 1px solid transparent;
}QMenu::item:disabled {color: #666666;
}QMenu::item:selected {border-color: gray;background: #222222;
}QMenu::icon:checked {}QMenu::separator {height: 1px;background: #222222;margin-left: 10px;margin-right: 10px;margin-top: 1px;margin-bottom: 1px;
}QMenu::indicator {width: 13px;height: 13px;
}/* === QMenuBar === */
QMenuBar {background-color: black;color: white;
}QMenuBar::item {background: transparent;
}QMenuBar::item:disabled {color: gray;
}QMenuBar::item:selected {background: #222222;
}QMenuBar::item:pressed {background: #444444;
}
/* =================== */
QLineEdit, QListView, QTreeView, QTableView, QAbstractSpinBox {background-color: #AAA;color: #000;border: 1px solid #555;
}QAbstractScrollArea, QLineEdit, QTextEdit, QAbstractSpinBox, QComboBox {border: 1px solid #555;
}/* === QHeaderView === */
QHeaderView::section {height: 20px;
}QHeaderView::section {background: #666;border: 0;color: #000;padding-left: 4px;
}/* === QListView === */
QListView::item:hover {background: #AAA;
}QListView::item:selected {background: #333;color: #AAA;
}/* === QTableView === */
QTableView::item:hover {background: #333333;
}QTableView::item:hover {background: #111111;color: yellow;
}/* === QTreeView === */
QTreeView::item {background: #AAA;
}QTreeView::item:hover {background: #CCC;
}QTreeView::item:selected {background: #333;color: #AAA;
}
Qt代码如下:
widget.h
#ifndef WIDGET_H
#define WIDGET_H#include <QWidget>namespace Ui {
class Widget;
}class Widget : public QWidget
{Q_OBJECTpublic:explicit Widget(QWidget *parent = 0);~Widget();public slots:void btnClicked();private:Ui::Widget *ui;int m_change;
};#endif // WIDGET_H
widget.cpp
#include "widget.h"
#include "ui_widget.h"
#include <QFile>Widget::Widget(QWidget *parent) :QWidget(parent),m_change(0),ui(new Ui::Widget)
{ui->setupUi(this);this->setWindowTitle("CSDN IT1995");connect(ui->pushButton,SIGNAL(clicked(bool)),this,SLOT(btnClicked()));
}void Widget::btnClicked(){QFile *file;switch (m_change%2) {case 0:file=new QFile("my1.qss",this);break;case 1:file=new QFile("my2.qss",this);break;default:return;break;}file->open(QFile::ReadOnly);QString styleSheet=QString(file->readAll());qApp->setStyleSheet(styleSheet);file->close();m_change++;
}Widget::~Widget()
{delete ui;
}
main.cpp
#include "widget.h"
#include <QApplication>int main(int argc, char *argv[])
{QApplication a(argc, argv);Widget w;w.show();return a.exec();
}
Qt学习笔记-Qt程序切换皮肤相关推荐
- Qt学习笔记-Qt5程序开机自启动(windows)
原博文地址为:https://blog.csdn.net/x356982611/article/details/53183144 简介 window下开机启动最简单的实现方式就是在注册表中添加启动项目 ...
- [Qt学习笔记]Qt程序加密,实现软件运行次数和硬件信息绑定
文章目录 前言 1.思路分析 2.实现函数 3.示例代码 4.效果展示 前言 程序员为了防止自己的成果被白嫖,或者发布的软件在公司层面上要做一些防抄袭处理,这时就需要在软件层面上加锁.加密等操作. 1 ...
- Qt学习笔记-Qt中OpenGL的使用
现在窗口中心即为坐标原点,X轴从左到右,Y轴从下到上,Z轴从里到外. 程序运行截图如下: 源码如下: myglwidget.h #ifndef MYGLWIDGET_H #define MYGLWID ...
- Qt学习笔记-Qt Graphic View Framework
逻辑: 1.创建一场景 -> QGraphicsScene 2.创建一个视图 -> QGraphicsView 3.往场景添加Item -> QGraphicsSimpleTextI ...
- Qt学习笔记,Qt程序架构设计要旨
Qt学习笔记,Qt程序架构设计要旨 时间过得很快,转眼学习Qt已经有一个多月了,对Qt的学习也在不断的深入中.自己手下的code也很多了,不过不得不说,还有很多的部分没有接触过,比如网络编程,2D,3 ...
- Qt 学习笔记(5)绘图 五子棋游戏
在上一篇博客C++ Qt学习笔记(4)绘图中介绍了Qt中的绘图方法,基于上一篇的博客的知识,使用QPainter设计一个五子棋的棋盘,后续会完成五子棋的游戏设计. 1. 棋盘的设计 首先需要绘制棋盘的 ...
- QT学习笔记(摘抄)
QT学习笔记-1.QT主要的对象 说来惭愧学习c++很长时间了一直没有使用c++开发过软件界面 所以现在想认认真真的学习一个c++图形界面框架库 本来想学习Xwidget但是这个资料不大好找 有啥问题 ...
- 【QT学习笔记】基于QT的天气预报
[QT学习笔记]基于QT的天气预报 前言 那就开始吧! 先看一下效果 颜面最重要,画个UI 构造实现 怎么开始? 开始解析数据 关于城市切换 ok 最后源码献上 感谢 前言 学习qt已经有一段时间了, ...
- QT 学习笔记(六)
文章目录 一.设计器的使用 二.常用控件 1. Containers 容器类 2. Input Widgets 输出控件 3. Display Widgets 显示类控件 三.代码和运行结果 1. 主 ...
最新文章
- android canves rotate 详解
- Linux Watchdog 机制
- 单个正态总体均值的区间估计_假设检验09---单个正态总体参数的假设检验
- 如何制作pem公钥证书和私钥证书
- 695.岛屿的最大面积(026)BFS
- 1、jquery事件绑定和委托的实现
- python中列表实现去重使用_Python实现嵌套列表去重方法示例
- c# 插入树形数据#_C#数据类型能力问题 套装1
- 总结《Ray Tracing from the Ground Up》
- 读懂了鱼玄机,就读懂了爱情
- 实现一个病毒扫描app——python爬取病毒样本
- 悉尼大学计算机相关硕士,悉尼大学计算机硕士专业介绍
- 初中计算机软件课后反思,信息技术的教学反思
- JavaWeb医院挂号系统
- python词频统计_用Python实现一个词频统计(词云+图)
- 做好软件测试的关键是什么,做好测试计划和测试用例的工作的关键是什么?
- 笨方法学Python(1-5)
- 月薪30k和月薪15k的区别,程序员要迈的第一个门槛~
- 禁止滚动条滚动和移除禁止
- 移动网络打不开香港服务器网站,移动宽带打不开网站怎么办