《QT实用小工具·二十七》各种炫酷的样式表

2024-04-17 21:44

本文主要是介绍《QT实用小工具·二十七》各种炫酷的样式表,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1、概述
源码放在文章末尾

该项目实现了各种炫酷的样式表,如单选、多选、按钮、日历、表格、下拉框、滚轮等,下面是项目demo演示:
在这里插入图片描述

项目部分代码如下:

#include "frmmain.h"
#include "ui_frmmain.h"
#include "head.h"frmMain::frmMain(QWidget *parent) : QMainWindow(parent), ui(new Ui::frmMain)
{ui->setupUi(this);this->initForm();
}frmMain::~frmMain()
{delete ui;
}void frmMain::initForm()
{ui->rbtn1->setChecked(true);ui->ck2->setChecked(true);ui->ck3->setCheckState(Qt::PartiallyChecked);ui->textEdit->setText("我爱你");ui->treeWidget->expandAll();int rowHeight = 23;ui->tableWidget->horizontalHeader()->setFixedHeight(rowHeight);ui->tableWidget->verticalHeader()->setDefaultSectionSize(rowHeight);//加载鼠标右键菜单翻译文件QTranslator *translator1 = new QTranslator(qApp);if (translator1->load(":/qm/qt_zh_CN.qm")) {qApp->installTranslator(translator1);}//加载富文本框鼠标右键菜单翻译文件QTranslator *translator2 = new QTranslator(qApp);if (translator2->load(":/qm/widgets.qm")) {qApp->installTranslator(translator2);}on_btnStyle1_clicked();
}void frmMain::loadStyle(const QString &qssFile)
{//开启计时QElapsedTimer time;time.start();//加载样式表QString qss;QFile file(qssFile);if (file.open(QFile::ReadOnly)) {//用QTextStream读取样式文件不用区分文件编码 带bom也行QStringList list;QTextStream in(&file);//in.setCodec("utf-8");while (!in.atEnd()) {QString line;in >> line;list << line;}file.close();qss = list.join("\n");QString paletteColor = qss.mid(20, 7);qApp->setPalette(QPalette(paletteColor));//用时主要在下面这句qApp->setStyleSheet(qss);}qDebug() << "用时:" << time.elapsed();
}void frmMain::on_btnStyle1_clicked()
{loadStyle(":/qss/lightblue.css");
}void frmMain::on_btnStyle2_clicked()
{loadStyle(":/qss/flatgray.css");
}void frmMain::on_btnStyle3_clicked()
{loadStyle(":/qss/blacksoft.css");
}void frmMain::on_btnInfo_clicked()
{//QFileDialog::getOpenFileName(this, "", "", "", 0, QFileDialog::DontUseNativeDialog);//QFileDialog::getExistingDirectory(0, "", "", QFileDialog::DontUseNativeDialog);
}

源码下载

这篇关于《QT实用小工具·二十七》各种炫酷的样式表的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/912930

相关文章

MySql match against工具详细用法

《MySqlmatchagainst工具详细用法》在MySQL中,MATCH……AGAINST是全文索引(Full-Textindex)的查询语法,它允许你对文本进行高效的全文搜素,支持自然语言搜... 目录一、全文索引的基本概念二、创建全文索引三、自然语言搜索四、布尔搜索五、相关性排序六、全文索引的限制七

基于Java实现回调监听工具类

《基于Java实现回调监听工具类》这篇文章主要为大家详细介绍了如何基于Java实现一个回调监听工具类,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录监听接口类 Listenable实际用法打印结果首先,会用到 函数式接口 Consumer, 通过这个可以解耦回调方法,下面先写一个

Qt中QGroupBox控件的实现

《Qt中QGroupBox控件的实现》QGroupBox是Qt框架中一个非常有用的控件,它主要用于组织和管理一组相关的控件,本文主要介绍了Qt中QGroupBox控件的实现,具有一定的参考价值,感兴趣... 目录引言一、基本属性二、常用方法2.1 构造函数 2.2 设置标题2.3 设置复选框模式2.4 是否

QT进行CSV文件初始化与读写操作

《QT进行CSV文件初始化与读写操作》这篇文章主要为大家详细介绍了在QT环境中如何进行CSV文件的初始化、写入和读取操作,本文为大家整理了相关的操作的多种方法,希望对大家有所帮助... 目录前言一、CSV文件初始化二、CSV写入三、CSV读取四、QT 逐行读取csv文件五、Qt如何将数据保存成CSV文件前言

Qt中QUndoView控件的具体使用

《Qt中QUndoView控件的具体使用》QUndoView是Qt框架中用于可视化显示QUndoStack内容的控件,本文主要介绍了Qt中QUndoView控件的具体使用,具有一定的参考价值,感兴趣的... 目录引言一、QUndoView 的用途二、工作原理三、 如何与 QUnDOStack 配合使用四、自

使用Python构建一个Hexo博客发布工具

《使用Python构建一个Hexo博客发布工具》虽然Hexo的命令行工具非常强大,但对于日常的博客撰写和发布过程,我总觉得缺少一个直观的图形界面来简化操作,下面我们就来看看如何使用Python构建一个... 目录引言Hexo博客系统简介设计需求技术选择代码实现主框架界面设计核心功能实现1. 发布文章2. 加

JS+HTML实现在线图片水印添加工具

《JS+HTML实现在线图片水印添加工具》在社交媒体和内容创作日益频繁的今天,如何保护原创内容、展示品牌身份成了一个不得不面对的问题,本文将实现一个完全基于HTML+CSS构建的现代化图片水印在线工具... 目录概述功能亮点使用方法技术解析延伸思考运行效果项目源码下载总结概述在社交媒体和内容创作日益频繁的

基于Python打造一个全能文本处理工具

《基于Python打造一个全能文本处理工具》:本文主要介绍一个基于Python+Tkinter开发的全功能本地化文本处理工具,它不仅具备基础的格式转换功能,更集成了中文特色处理等实用功能,有需要的... 目录1. 概述:当文本处理遇上python图形界面2. 功能全景图:六大核心模块解析3.运行效果4. 相

springboot项目中常用的工具类和api详解

《springboot项目中常用的工具类和api详解》在SpringBoot项目中,开发者通常会依赖一些工具类和API来简化开发、提高效率,以下是一些常用的工具类及其典型应用场景,涵盖Spring原生... 目录1. Spring Framework 自带工具类(1) StringUtils(2) Coll

Qt spdlog日志模块的使用详解

《Qtspdlog日志模块的使用详解》在Qt应用程序开发中,良好的日志系统至关重要,本文将介绍如何使用spdlog1.5.0创建满足以下要求的日志系统,感兴趣的朋友一起看看吧... 目录版本摘要例子logmanager.cpp文件main.cpp文件版本spdlog版本:1.5.0采用1.5.0版本主要