Qt+css绘制标题

        之前学过html和小程序,帮老师做项目的时候也用过vue,在想qt绘制界面是不是也可以使用css,然后查了一些资料,绘制了一个标题,准备用到智能家居的上位机上面。

        成果

         源码

        重写了paintEvent函数和TimeEvent函数,一个用于绘制标题,一个用于刷新右边的时间

        代码里面的注释比较详细

        

Widget::Widget(QWidget *parent): QWidget(parent)
{//可以通过样式表设置背景this->setAttribute(Qt::WA_StyledBackground);/*这行代码为窗口或控件设置了一个样式表,用于定义其外观样式。样式表使用CSS(层叠样式表)语法来描述界面元素的外观。background-image: url(:/image/res/head_bg.png); 设置背景图像。这里使用的资源路径可能是一个资源文件或者资源别名,指向一个图片文件。background-repeat: no-repeat; 确保背景图像不会重复。background-position: center; 设置背景图像居中显示。background-attachment: fixed; 这通常用于浏览器背景,确保背景图像固定,不随页面滚动而滚动*/this->setStyleSheet("background-image: url(:/new/prefix1/res/head_bg.png); background-repeat: no-repeat; background-position: center; background-attachment: fixed;");//定时器 1s 1s一次刷新startTimer(1000);
}
void Widget:: timeEvent(QTimerEvent *){//刷新update();
}
void Widget:: paintEvent(QPaintEvent *){QPainter painter(this);//抗锯齿、平滑图像转换和抗锯齿文本painter.setRenderHints(QPainter::Antialiasing | QPainter::SmoothPixmapTransform | QPainter::TextAntialiasing); // 抗锯齿和使用平滑转换算法painter.setPen(QColor(255, 255, 255));QFont font = this->font();font.setPixelSize(42);painter.setFont(font);//居中painter.drawText(rect(), Qt::AlignCenter, "智能家居控制平台");QDateTime currentDateTime = QDateTime::currentDateTime();QString formattedDateTime = currentDateTime.toString("yyyy年M月d日 hh:mm:ss");//半透明的白色(alpha值为140,即70%不透明度painter.setPen(QColor(255, 255, 255, 140));font.setPixelSize(18);painter.setFont(font);//右对齐painter.drawText(rect().marginsRemoved(QMargins(10, 10, 10, 10)), Qt::AlignVCenter | Qt::AlignRight, formattedDateTime);
}

        

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/658299.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

幻兽帕鲁服务器多少钱一个?26元,阿里云腾讯云华为云

2024年幻兽帕鲁服务器价格表更新,阿里云、腾讯云和华为云Palworld服务器报价大全,4核16G幻兽帕鲁专用服务器阿里云26元、腾讯云32元、华为云26元,阿腾云atengyun.com分享幻兽帕鲁服务器优惠价格表,多配置报价: 幻兽帕鲁…

透明拼接屏造型:多样拼接与影响因素

透明拼接屏,以其独特的透明显示效果和灵活的拼接方式,在现代显示领域中独树一帜。其造型多样,包括横屏拼接、竖屏拼接、异形拼接以及定制拼接等多种方式,满足了不同场景和应用的需求。尼伽小编将详细介绍这些拼接方式,…

PR转场模板|超级炫酷故障特效电影游戏视频转场PR模板剪辑素材

premiere转场,包含200个带有Sound FX的独特视频转场效果。加强剪辑视频视觉效果,在镜头之间的剪辑和添加文字动画! MYFX Extension可帮助您一键浏览和应用预设!可以喜爱预设,并拥有自己亲手挑选的库。如果您有任何问题…

字符数组的学习

前言: 在前面我们介绍过字符型数据是以字符的ASCII码储存在存储单元中,一般占一个字节,由于 ASCII码也属于整数类型,因此在C99标准中把字符类型归纳为整数类型中的一种,由于字符数据 的应用比较广泛,尤其…

抽象类(Java)、模板方法设计模式

一、概念 在Java中有abstract关键字,就是抽象的意思,可用来修饰类和成员方法。 用abstract来修饰类,那这个类就是抽象类;修饰方法,那这个方法就是抽象方法。 修饰符 abstract class 类名{修饰符 abstract 返回值类型…

【数据结构 02】队列

一、原理 队列通常是链表结构,只允许在一端进行数据插入,在另一端进行数据删除。 队列的特性是链式存储(随机增删)和先进先出(FIFO:First In First Out)。 队列的缺陷: 不支持随机…

看员工聊天记录,监控员工电脑聊天记录软件有哪些?

企业监控员工电脑聊天记录软件是指企业为了管理员工、提高工作效率和保护公司机密而采取的一种技术手段。随着互联网的发展和普及,员工在工作时间内使用聊天工具进行沟通已经成为常态,因此企业需要一种有效的方式来监控和管理员工的聊天记录。 为什么要监…

【算法与数据结构】198、213、337LeetCode打家劫舍I, II, III

文章目录 一、198、打家劫舍二、213、打家劫舍 II三、337、打家劫舍III三、完整代码 所有的LeetCode题解索引,可以看这篇文章——【算法和数据结构】LeetCode题解。 一、198、打家劫舍 思路分析:打家劫舍是动态规划的的经典题目。本题的难点在于递归公式…

机器学习 | 掌握线性回归的实战技巧

目录 初识线性回归 损失和优化 欠拟合与过拟合 正则化线性模型 模型的保存与加载 初识线性回归 线性回归(Linearregression)是利用回归方程(函数)对一个或多个自变量(特征值)和因变量(目标值)之间关系进行建模的一种分析方式。特点是:有一个自变量的情况称为单…

代码随想录刷题笔记 DAY 18 | 找树左下角的值 No.513 | 路经总和 No.112 | 从中序与后序遍历序列构造二叉树 No.106

Day 18 01. 找树左下角的值(No. 513) 题目链接 代码随想录题解 1.1 题目 给定一个二叉树的 根节点 root,请找出该二叉树的 最底层 最左边 节点的值。 假设二叉树中至少有一个节点。 示例 1: 输入: root [2,1,3] 输出: 1 示例 2: 输入…

不移其志,踏浪前行 | 北京智和信通召开2023年度工作总结大会

岁聿云暮,新元肇启,2024年1月24日,北京智和信通技术有限公司(以下简称“北京智和信通”)召开2023年度年终总结大会。会上,各部门负责人全面分析公司业务发展态势,各部门员工依次汇报主要工作情况…

QT 使用 QWebChannel 与 Web 端通信展示文件信息

前言 本文将展示如何使用 QWebChannel 来实现 Web 端与 QT 端之间的交互,同时会通过一个在浏览器端展示文件夹信息的简单例子来展示其具体使用,其功能如下: 获取指定文件夹下的文件信息。通过使用 QT 的 QFileSystemWatcher 对指定文件夹进…

C语言 | 求最大/小值小技巧:fmax、fmin函数

如果你只是因为不想用C语言手写max、min函数,就直接去用iostream中的max、min函数的话,这篇文章可能会有些许帮助。 😇 fmax、fmin函数用于确定两个指定值的较大/较小值。 头文件 math.h(或者cmath)。 定义 double …

2023年全国职业院校技能大赛(高职组)“云计算应用”赛项赛卷9

某企业根据自身业务需求,实施数字化转型,规划和建设数字化平台,平台聚焦“DevOps开发运维一体化”和“数据驱动产品开发”,拟采用开源OpenStack搭建企业内部私有云平台,开源Kubernetes搭建云原生服务平台,选…

Android systemui 编译

目录 简介: 一、步骤 二、下载源码 三、环境配置 四、确定好需要编译版本 五、编译SystemUI 步骤1:进入源代码目录 步骤2:初始化编译环境 步骤3:选择目标设备 步骤4:编译SystemUI 步骤5:查找生成…

网络安全全栈培训笔记(59-服务攻防-中间件安全CVE复现lSApacheTomcataNginx)

第59天 服务攻防-中间件安全&CVE复现&lS&Apache&Tomcata&Nginx 知识点: 中间件及框架列表: lIS,Apache,Nginx,Tomcat,Docker,Weblogic,JBoos,WebSphere,Jenkins, GlassFish,Jira,Struts2,Laravel,Solr,Shiro,Thinkphp,Sprng,Flask,…

Ubuntu系统安装 Redis

环境准备 Ubuntu 系统版本:22.04.3Redis 版本:6.2.12 检查本地 make 环境 make -version若没有安装,则需要安装 sudo apt install make检查本地 gcc 环境 gcc -version若没有安装,则需要安装 sudo apt install gcc。 sudo a…

服装行业ERP系统解决方案

我国的服装企业大多属于劳动密集型,主要有三种类型:自有品牌服装生产销售企业、接订单生产型企业及处于产业链下游的零售分销企业。在经营过程中,服装行业面临诸多挑战,如流行周期短、季节性强,市场变化快;…

Vue学习Element-ui

声明:本文来源于黑马程序员PDF讲义 Ajax 我们前端页面中的数据,如下图所示的表格中的学生信息,应该来自于后台,那么我们的后台和前端是 互不影响的2个程序,那么我们前端应该如何从后台获取数据呢?因为是2…

博云科技与中科可控全面合作,探索前沿金融科技新机遇

2024年1月26日,博云科技与中科可控在昆山高新区成功举办合作签约仪式。昆山市委常委、昆山高新区党工委书记孙道寻、中科可控董事长聂华、博云科技董事长花磊等领导出席了本次签约仪式。 中科可控将利用其在先进计算和智造领域的优势,为博云科技提供有关…