ElaWidgetTools——示例概述和用户卡片

告别原生Qt界面:手把手教你用ElaWidgetTools打造Fluent风格桌面应用 本文详细介绍了如何使用ElaWidgetTools开源UI库为Qt应用打造Fluent风格界面。从安装集成到核心控件美化,再到主题系统深度集成,手把手教你实现现代化桌面应用设计。特别适合即时通讯软件等需要精美UI的项目,让Qt应用轻松拥有Windows 11风格的视觉体验。 阅读详情
AI摘要

本期博客不再关注自身项目,而是学习大佬写的ElaWidgetTools示例代码。介绍了项目中example文件夹里各部分内容,如示例页面、头文件等。还讲解了主函数调用eApp初始化,以及mainwindow里的改动,如MainWindow类父类改成ElaWindow,initWindow函数的功能等。

接着说这个好东西。

在这里插入图片描述

上一期我们把 ElaWidgetTools 加入到了我们自己的项目里面。
所以!
这一期我们先不管自己那个项目。
没办法啊,因为我们也不知道这玩意咋用嘛,这期先看看大佬写的示例代码学学怎么用的吧。

在我们的 ElaWidgetTools 项目中,有一个 example 文件夹,是咱们上一个图中窗口运行的实际代码,咱们就抄这个里面的代码用就好了。

在这里插入图片描述

内容如下:

在这里插入图片描述

ExamplePage:内容为示例页面的具体内容,在主窗口的 cpp 文件中使用
Header Files:头文件
ModelView:对要展示的一些模型的内容的具体设计,在展示对应控件的页面中使用
Resource:一些图片
Source Files:cpp 文件

主函数:

int main(int argc, char* argv[])
{
    QApplication a(argc, argv);
    eApp->init();
    MainWindow w;
    w.show();
    
    return a.exec();
}

主函数调用了一个 eApp 的初始化。eApp实际上就是 ElaApplication 的实例。

#define eApp ElaApplication::getInstance()

void ElaApplication::init()
{
    QApplication::setAttribute(Qt::AA_DontCreateNativeWidgetSiblings);
    QFontDatabase::addApplicationFont(":/include/Font/ElaAwesome.ttf");
    //默认字体
    QFont font = qApp->font();
    font.setPixelSize(13);
    font.setFamily("Microsoft YaHei");
    font.setHintingPreference(QFont::PreferNoHinting);
    qApp->setFont(font);
}

初始化函数的内容其实看不看都行了,我们自己写的时候也只需要调用一下就行。
内容也不多。
第一行就是设置了一下本程序的属性,具体内容你少管,反正就是确保在跨平台的情况下各个控件的外观不会有太大变化。
后面的一坨就是给程序设置了一个默认字体,微软雅黑。
(程序运行了以后发现图标变成了小方块的话,可以检查一下是不是没初始化。)

main.cpp 里面就这一行的改动(还有加上头文件啥的)。
主要的代码都写在 mainwindow 里面:

在这里插入图片描述

映入眼帘的是一大陀头文件,其实不用在意,一会再说。
值得注意的是 MainWindow 类的父类改变了,改成了 ElaWindow。我们使用的时候也要这样做一下,在头文件和源文件里对应的位置都改成 ElaWindow。这个时候程序运行起来的窗口就不一样了,变成了这样:

在这里插入图片描述

(糙汉子秒变二次元美少女)
然后我们先看一下 initWindow 函数:

void MainWindow::initWindow()
{
    setWindowIcon(QIcon(":/include/Image/Cirno.jpg"));
    resize(1200, 740);
    setUserInfoCardPixmap(QPixmap(":/Resource/Image/Cirno.jpg"));
    setUserInfoCardTitle("Ela Tool");
    setUserInfoCardSubTitle("Liniyous@gmail.com");
    setWindowTitle("ElaWidgetTool");
}

前两行和最后一行是 qt 原本就有的功能:设置窗口图标,设置窗口大小和设置窗口标题
下面三行代码是设置这个区域的:

在这里插入图片描述

setUserInfoCardPixmap:设置用户卡片的图标
setUserInfoCardTitle:设置用户卡片的标题
setUserInfoCardSubTitle:设置用户卡片的 sub 标题

我试了一下,就算不写这三行代码也会按上图生成默认的用户卡片。
我们可以通过调用 setUserInfoCardVisible 函数来设置是否显示用户卡片,参数为一个 bool 类型。

简单抄一下这几行代码,加入到我们自己的项目里面,我们就得到了:

在这里插入图片描述

就先说这些吧,下期说说关于插入页面相关的内容。

Qt控件美化 用好CSS/QSS可视化工具 一、CSS概念 级联样式表(CSS)包含应用于网页中的元素的样式规则。CSS样式定义元素的显示方式以及元素在页中的放置位置。可以创建一个通用规则,只要Web浏览器遇到一个元素实例,或遇到一个分配给某个特定样式类的元素,该规则就立刻应用属性,而不是将属性逐个分配给页中的每个元素。CSS样式可以通过内联方式放置在单个HTML元素内,也可以在网页head部分的style块内加以分组,或从单独的样式表中导入。如果样式是在单独的样式表中创建的,则可以将多个网页链接到该样式表,从而为整个网站提... 阅读详情

相关推荐

ElaWidgetTools编译实战:从源码到示例运行的完整指南

Qt界面开发中,如何让桌面应用拥有现代、圆润且动态配色的视觉体验,一直是开发者关注的焦点。传统的QSS样式表往往难以高效实现复杂的自适应UI效果,而现代UI组件库通过封装底层绘制与交互逻辑,为开发者提供了更轻量的解决方案。这类组件库通常基于C++构建,依赖CMake或qmake进行工程管理,并与编译器工具链紧密关联。在实际工程中,掌握组件库的源码编译、依赖配置与部署流程,是快速搭建专业级工具软件界面的关键一步。从环境准备到构建系统选型,再到解决编译链接阶段的常见问题,全流程的实践方法对桌面应用开发者极具参考

weixin_28826521的博客 254

【亲测免费】 ElaWidgetTools 开源项目教程

ElaWidgetTools 是一个基于 QT-Widget 开发的 FluentUI 风格组件库。该项目为开源项目,遵循 MIT 协议,内置多个 Fluent 风格的基础组件和常用功能,如 DXGI 录屏/截屏、特化的 QGraphicsView 框架等。目前兼容 QT6 及以上所有版本,后续会跟进兼容更多版本。 ## 项目快速启动 ### 环境准备 确保你已经安装了 QT6 及以上版本。...

gitblog_00399的博客 4056

ElaWidgetTools Qt控件库编译运行指南:从环境配置到示例实战

在桌面应用开发中,Qt作为跨平台C++框架被广泛用于构建复杂界面,而控件库则能显著提升界面开发效率。通过封装常见UI组件和窗口效果,开发者可以避免重复编写QSS样式,聚焦业务逻辑。ElaWidgetTools正是这样一套现代风格的Qt控件集,提供圆角卡片、亚克力窗口、导航栏和主题切换等能力。本文从环境配置入手,梳理Qt 5.15.2与MSVC工具链的搭配要点,详解CMake构建流程,并演示如何运行示例程序及集成到自有项目,同时整理常见编译报错与运行时异常的排查方法,覆盖Windows平台与Qt 6适配注意事

weixin_26850069的博客 286

【亲测免费】 ElaWidgetTools开源项目使用教程

--- ## 1. 项目目录结构及介绍 ElaWidgetTools项目遵循清晰的组织结构,下面是其主要目录及内容概览: - **`example`**: 示例程序目录,通常包含一个或多个示例应用,用于展示如何使用ElaWidgetTools中的组件。 - **`src`**: 源代码核心目录,存放着项目的主要实现代码,包括各种FluentUI风格的组件类定义和实现。 - **`.gitig...

gitblog_00949的博客 2766

ElaWidgetTools项目集成指南[可运行源码]

本文详细介绍了如何将ElaWidgetTools集成到自己的项目中。ElaWidgetTools是一个基于QT-Widget开发的FluentUI风格组件库,由b站大佬_Ela开发。文章从获取项目文件开始,逐步讲解了如何解压文件、使用QT打开项目、配置构建套件、勾选install选项、构建项目、复制include文件夹和库文件、修改CMakeFiles.txt等步骤,最终完成集成并能够通过继承Ela开头的类来使用框架功能。作者还表示后续会继续推出ElaWidgetTools的其他相关内容和使用方法。

告别Modern Standby噩梦:Win11睡眠断网冻结的根源剖析与S3睡眠回归实战

本文深入剖析了Windows 11中Modern Standby(现代待机)模式导致睡眠后断网、系统冻结等问题的根源,指出其与硬件驱动、后台活动的兼容性矛盾。文章提供了通过修改注册表键值强制系统回归稳定S3睡眠状态的详细实战步骤,帮助用户彻底解决睡眠故障,实现可靠的远程访问与挂机任务。

weixin_29210727的博客 606

ElaWidgetTools卡片组件大全:交互式、亚克力、热门卡片实战

ElaWidgetTools是一款基于QT-Widget的Fluent-UI组件库,提供了丰富的卡片组件,帮助开发者快速构建现代化界面。本文将详细介绍ElaWidgetTools中的交互式卡片、亚克力卡片和热门卡片等核心组件,以及它们的实战应用方法。 ## 什么是ElaWidgetTools卡片组件? ElaWidgetTools卡片组件是一系列预定义的UI元素,用于展示信息、图片和交互内容。

gitblog_07044的博客 512

monocle3-单细胞轨迹分析在疾病研究中的应用

本文深入探讨了monocle3在单细胞轨迹分析中的核心应用,特别是在疾病研究领域。通过实战案例,详细讲解了如何利用monocle3进行轨迹推断,构建细胞状态演变的“路线图”,并结合伪时间分析定位疾病进展阶段。文章还介绍了如何挖掘驱动疾病发展的关键基因,并分享了数据整合、根节点选择等进阶技巧与避坑指南,旨在帮助研究者利用这一强大工具揭示肿瘤异质性、免疫治疗耐药等复杂生物学过程的动态机制。

a3b4c5的博客 639

如何用ElaWidgetTools创建Windows 11风格的QT应用程序

ElaWidgetTools是一个专为QT-Widget设计的Fluent-UI组件库,能够帮助开发者快速构建具有Windows 11风格的现代应用程序。本文将详细介绍如何使用这个强大的工具库,从零开始创建一个符合Windows 11设计规范的QT应用。 ## 🌟 什么是ElaWidgetTools? ElaWidgetTools是一个开源的QT组件库,它实现了Windows 11的Flue

gitblog_00794的博客 529

EGE基础入门篇(一):绘图基础知识

EGE绘图所需要了解的相关基础知识

依稀_yixy的博客 2万+

【Linux内核】Linux内核裁剪完全指南:从理论到实战的系统优化

在嵌入式设备、专用服务器和物联网系统日益普及的今天,如何让Linux系统在资源受限的环境中高效运行成为开发者必须面对的问题。Linux内核裁剪正是解决这一问题的关键技术,它通过移除不必要的内核组件,打造出更精简、更安全、更高效的自定义操作系统。本文将系统全面地介绍Linux内核裁剪的完整流程和实用技巧,帮助您掌握这一核心技能。Linux内核裁剪是一项结合技术知识与实践经验的系统工程。明确需求:裁剪前必须清晰了解目标系统的硬件配置和功能需求。循序渐进:采取小步修改、反复测试的策略,避免一次性大幅修改。

撬动未来的支点的专栏 1389

ElaWidgetTools:快速构建现代化Fluent风格QT界面的完整解决方案

ElaWidgetTools作为专为QT-Widget框架设计的Fluent UI风格组件库,为开发者提供了一套完整的现代化界面设计工具集。这个开源项目通过50+精心设计的UI组件,帮助开发者轻松创建具有微软Fluent设计语言特色的专业级桌面应用程序界面,大幅提升用户体验和开发效率。 ## 环境配置与项目初始化 开始使用ElaWidgetTools前,需要确保系统已安装QT6开发环境。推荐使

gitblog_00851的博客 866

使用pdfBox实现pdf转图片出现中文方块乱码 简单修改源码解决

参考文章 问题排查:使用pdfbox将pdf转image时STSong-Light字体中文乱码 pdfbox版本是2.0 日志中打印出类似这样的日志(例:Using fallback XXX for CID-keyed font STSong-Light),就说明系统没有安装STSong-Light字体,pdfbox使用XXX字体来替代了。如果出现方块,就说明没有这种字体,并且替代字体也没有,日志也有相应的其他提示。 正常操作就是安装缺失的 STSong-Light 字体,但是在网上搜到的都是 STSong

aji_csdn的博客 5266

3小时从零掌握:ElaWidgetTools打造Windows 11风格QT应用完全指南

ElaWidgetTools是一个专为QT-Widget开发者设计的Fluent UI风格组件库,让传统桌面应用焕发现代化视觉魅力。通过50+精心设计的Fluent组件,您可以轻松创建符合Windows 11设计规范的现代化界面,显著提升用户体验和产品竞争力。 ## 为什么选择ElaWidgetTools?🤔 **传统QT开发痛点**: - 界面风格陈旧,难以满足现代用户审美 - 需要大量自

gitblog_00645的博客 990

【论文+代码】ZS-N2N实现小样本零网络图像去噪

本文涵盖论文原文讲解与代码复现。

weixin_46287760的博客 4002

STM32实战:5分钟搞定MXL90614红外测温模块的I2C驱动(附完整代码)

本文提供了一份快速集成MLX90614红外测温模块的STM32实战指南。通过详细的软件I2C驱动代码,重点解析了SMBus通信协议、CRC校验及温度数据转换,帮助开发者避开常见陷阱,实现5分钟内完成模块驱动并读取准确温度值。

wasm7browser的博客 353

ElaWidgetTools完整指南:从零开始构建现代化QT桌面应用

ElaWidgetTools是一款专为QT-Widget打造的Fluent-UI组件库,它能帮助开发者快速构建出具有现代美感和流畅交互体验的桌面应用。无论是刚接触QT的新手,还是有经验的开发者,都能通过本指南轻松上手ElaWidgetTools,让你的QT应用界面瞬间提升一个档次。 ## 🌟 认识ElaWidgetTools:现代UI设计的得力助手 ElaWidgetTools以其出色的Fl

gitblog_01040的博客 352

使用Python,OpenCV查找图像中的最亮点

这篇博客展示了,为什么在图像中找到最亮的点之前应用高斯模糊是至关重要的。 通过应用高斯模糊,可以将每个给定半径内的像素平均在一起。取平均值可以去除高频噪声,否则会影响cv2.minMaxLoc函数的结果。 一定要研究高斯模糊半径的恰当值。如果取值太小,将会减轻平均值的影响,而忽略了更大、更亮的区域。但是如果半径太大,将无法探测到小的明亮区域。

qq_40985985的博客 3809

告别传统界面:用ElaWidgetTools打造惊艳Fluent风格QT应用

还在为QT应用的陈旧界面发愁吗?想为用户提供媲美Windows 11的现代体验吗?ElaWidgetTools正是您需要的解决方案!这个基于QT-Widget的Fluent UI风格组件库,让传统桌面应用瞬间焕发新生。无论您是开发新手还是资深工程师,都能快速上手,构建专业级的现代化界面。 ## 为什么选择ElaWidgetTools?🎯 **传统QT界面痛点:** - 界面设计过时,缺乏现代

gitblog_00476的博客 844

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

5分钟终极指南:用ElaWidgetTools构建现代化Fluent风格应用

还在为Qt应用的界面设计而烦恼吗?想要为传统桌面应用注入现代感却不知从何下手?ElaWidgetTools正是为你量身打造的解决方案。这个基于Qt Widgets的Fluent设计风格组件库,让开发者能够快速创建符合现代UI规范的应用程序界面。 ## 开发痛点与解决方案 **常见开发痛点**: - 界面风格陈旧,难以吸引用户 - 从零开发UI组件耗时耗力 - 缺乏统一的视觉设计规范 - 主题切

gitblog_00583的博客 469

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

ElaWidgetTools核心组件深度解析:AppBar、NavigationBar、Calendar等

ElaWidgetTools是一款专为QT-Widget打造的Fluent-UI组件库,提供了丰富的界面元素和交互工具,帮助开发者快速构建现代化、美观的桌面应用程序。本文将深入解析ElaWidgetTools中的核心组件,包括AppBar、NavigationBar和Calendar等,带你了解它们的功能特点和使用方法。 ## 组件概览:ElaWidgetTools的视觉魅力 ElaWidge

gitblog_00058的博客 1109

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

如何快速构建现代化Fluent风格QT界面:ElaWidgetTools完整指南

想要为您的QT应用程序打造专业级的Fluent风格界面吗?ElaWidgetTools组件库正是您需要的解决方案。这个基于QT-Widget开发的FluentUI风格框架,让开发者能够轻松创建现代化UI界面,无需深入复杂的设计细节。通过本文的完整指南,您将掌握快速上手Fluent风格QT界面的核心技巧。 ## 一、项目概述与核心价值 ElaWidgetTools是一个专为QT开发者设计的开源U

gitblog_01019的博客 730

如何在5分钟内用ElaWidgetTools创建现代化FluentUI应用

想要为你的Qt应用程序添加Windows 11风格的现代化界面吗?ElaWidgetTools就是你需要的终极解决方案!这个开源的FluentUI组件库让Qt开发者能够快速构建出专业级的用户界面,无需从零开始设计UI组件。无论你是新手还是经验丰富的开发者,都能在短短几分钟内上手使用。 ## ✨ 项目核心亮点:为什么选择ElaWidgetTools ElaWidgetTools最大的优势在于**

gitblog_00369的博客 396

5分钟快速上手ElaWidgetTools:构建现代化FluentUI界面的终极指南

想要为你的Qt应用程序打造Windows 11风格的现代化界面吗?ElaWidgetTools正是你需要的解决方案。这个基于Qt Widgets的Fluent设计风格组件库,让开发者能够轻松创建出具有微软Fluent设计语言的专业级用户界面,无需从零开始设计复杂的UI组件。 ## 为什么选择ElaWidgetTools? 传统Qt Widgets界面往往显得过时,而ElaWidgetTools

gitblog_00647的博客 472

15分钟精通ElaWidgetTools:构建Windows11风格界面的终极指南

在现代桌面应用开发领域,拥有专业级UI设计能力已成为开发者的核心竞争力。ElaWidgetTools作为基于Qt Widgets的Fluent设计风格组件库,为开发者提供了一套完整的现代化UI解决方案。这个开源项目让Qt开发者能够轻松创建具有Windows Fluent设计风格的应用程序界面,无需从零开始设计UI组件。 ## 从零开始:环境配置与项目构建 要快速上手ElaWidgetTools

gitblog_00671的博客 371

5分钟上手ElaWidgetTools:打造专业级FluentUI桌面应用

想要为你的Qt应用注入Windows 11般的现代感与流畅体验?ElaWidgetTools正是你需要的答案!这个基于Qt Widgets的Fluent设计风格组件库,为开发者提供了一站式的现代化UI解决方案。🎯 ## 为什么选择ElaWidgetTools? **🔄 双主题无缝切换** [![FluentUI浅色主题界面](https://raw.gitcode.com/gh_mirro

gitblog_00832的博客 499
上一篇: ElaWidgetTools如何加入到项目中
下一篇: 在 Visual Studio 上连接 WSL 使用 redis-plus-plus
出码弟子
博客等级 码龄5年 968粉丝 9原创
评论 6
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值