当前位置: 首页 > news >正文

Qt 杂项(Qwt、样式等)

Qt隐藏窗口边框

this->setWindowFlags(Qt::FramelessWindowHint);

Qt模态框

this->setWindowModality(Qt::ApplicationModal);

QLable隐藏border

代码中设置

lable->setStyleSheet("border:0px");

或者UI中直接设置样式:“border:0px”

Qwt开源控件

QwtDial 刻度盘显示汉字

  1. QwRoundScaleDraw中增加一个QMap<double,QString> 属性用于存储刻度对应的汉字描述

    private:// 添加代码片段QMap<double,QString> lableMap_ ;// 添加代码片段
    public:// 添加代码片段void setLableMap(QMap<double,QString> maps){ lableMap_ = maps;}// 添加代码片段
  2. 修改QwRoundScaleDraw中的drawLable函数

    在这里插入图片描述

  3. 在QwtDial中设置QwRoundScaleDraw

在这里插入图片描述

效果图:红色模糊部分是设置的汉字

在这里插入图片描述

QwtDial 指针自定义

QwtDial 的指针是由QwtDialNeedle类绘制的,自定指针也就是实现QwtDialNeedle的子类

继承QwtDialNeedle只需要实现drawNeedle函数

drawNeedle( QPainter* painter, double length, QPalette::ColorGroup colorGroup ) const

示例:

void drawNeedle( QPainter* painter, double length, QPalette::ColorGroup colorGroup ) const{const qreal width = qRound( length / 3.0 );QPainterPath path[4];path[0].lineTo( length, 0.0 );path[0].lineTo( 0.0, width / 2 );path[1].lineTo( length, 0.0 );path[1].lineTo( 0.0, -width / 2 );path[2].lineTo( -length, 0.0 );path[2].lineTo( 0.0, width / 2 );path[3].lineTo( -length, 0.0 );path[3].lineTo( 0.0, -width / 2 );const int colorOffset = 10;const QColor darkColor = Qt::black;const QColor lightColor = Qt::yellow;QColor color[4];color[0] = darkColor.lighter( 100 + colorOffset );color[1] = darkColor.darker( 100 + colorOffset );color[2] = lightColor.lighter( 100 + colorOffset );color[3] = lightColor.darker( 100 + colorOffset );painter->setPen( Qt::NoPen );for ( int i = 0; i < 4; i++ ){painter->setBrush( color[i] );painter->drawPath( path[i] );}
}

QwtSlider 刻度显示汉字

需要修改QwtScaleDraw的源码,增加一个QMap<double,QString> 属性用于存储刻度对应的汉字描述

private:// 添加代码片段QMap<double,QString> lableMap_ ;// 添加代码片段
public:// 添加代码片段void setLableMap(QMap<double,QString> maps){ lableMap_ = maps;}// 添加代码片段

修改QwtScaleDraw中的drawLable
在这里插入图片描述

QwtSlider 自定义滑块形状

滑块是通过drawHandle函数绘制;可以通过一个函数指针,将外部绘制滑块的逻辑引入,替换默认绘制逻辑

函数指针定义(qwt_slider.h):在这里插入图片描述

主要参数:handleRect,绘制滑块的区域,根据handleRect的坐标范围进行自定义绘制

​ orientation,表示QwtSlider控件是水平绘制,还是垂直绘制

QwtSlider添加函数SetDrawFunc

在这里插入图片描述

drawHandle函数修改:

在这里插入图片描述

QT数字格式化

// 10进制式化为指定宽度的16进制字符,位数不足补0
int a = 10;
int b=234;
QString msg=QString("test%1%2").arg(a,2,16,QLatin1Char('0')).arg(a,4,16,QLatin1Char('0'))
// msg  test0a00ea

相关文章:

Qt 杂项(Qwt、样式等)

Qt隐藏窗口边框 this->setWindowFlags(Qt::FramelessWindowHint);Qt模态框 this->setWindowModality(Qt::ApplicationModal);QLable隐藏border 代码中设置 lable->setStyleSheet("border:0px");或者UI中直接设置样式&#xff1a;“border:0px” Qwt开源…...

Python程序设计——列表

一、引言 关键点&#xff1a;一个列表可以存储任意大小的数据集合。 程序一般都需要存储大量的数值。假设&#xff0c;举个例子&#xff0c;需要读取100个数字&#xff0c;计算出它们的平均值&#xff0c;然后找出多少个数字是高于这个平均值的。程序首先读取100个数字并计算它…...

NPDP含金量高吗?难考吗?

一&#xff0c;什么是NPDP认证&#xff1f; NPDP认证中文名为产品经理国际资格认证&#xff0c;New Product Development Professional (NPDP) &#xff0c;是由美国 产品开发与管理协会 (PDMA) 所发起&#xff0c; 是国际公认的唯一的新产品开发专业认证&#xff0c;集理论、方…...

windows pip安装出现 error: Microsoft Visual C++ 14.0 is required

可参考&#xff1a;如何解决 Microsoft Visual C 14.0 or greater is required. Get it with “Microsoft C Build Tools“_不吃香菜的小趴菜的博客-CSDN博客 一、安装Visual Studio2022 1、下载&#xff1a;下载 Visual Studio Tools - 免费安装 Windows、Mac、Linux 我这使…...

威胁分析风险评估(TARA)影响和攻击可行性评估参考

在威胁分析风险评估&#xff08;TARA)过程中&#xff0c;风险等级由对资产安全属性侵害造成后果的影响等级和威胁的可能性两方面综合评估。 备注&#xff1a;以上内容的评估皆是建立在由信息安全问题引起并导致的前提下。 影响等级评估 影响等级说明&#xff0c;影响从安全&a…...

【教程】H5匿名信源码下载一封来信系统安装流程搭建教程

1、下载源码 匿名信2.0&#xff1a;匿名信h5源码 - 万策云盘 提取码&#xff1a;hOC4 2、查看搭建和使用教程 1,准备授权好的域名和服务器还有源码 2&#xff0c;创建网站和数据库&#xff0c;版本选择7.1【不可以选7.2】 3&#xff0c;上传源码并解压&#xff0c;导入数据…...

PyTorch训练简单的生成对抗网络GAN

文章目录 原理代码结果参考 原理 同时训练两个网络&#xff1a;辨别器Discriminator 和 生成器Generator Generator是 造假者&#xff0c;用来生成假数据。 Discriminator 是警察&#xff0c;尽可能的分辨出来哪些是造假的&#xff0c;哪些是真实的数据。 目的&#xff1a;使…...

django实现文件上传

在django中实现文件上传有三种方法可以实现&#xff1a; 自己手动写使用Form组件使用ModelForm组件 其中使用ModelForm组件实现是最简单的。 1、自己手写 先写一个上传的页面 upload_file.html enctype"multipart/form-data 一定要加这个&#xff0c;不然只会上传文件名…...

Java地图专题课 基本API BMapGLLib 地图找房案例 MongoDB

本课程基于百度地图技术&#xff0c;由基础入门开始到应用实战&#xff0c;适合零基础入门学习。将企业项目中地图相关常见应用场景的落地实战&#xff0c;包括有地图找房、轻骑小程序、金运物流等。同时讲了基于Netty实现高性能的web服务&#xff0c;来处理高并发的问题。还讲…...

vue实现可缩放拖拽盒子(亲测可用)

特征 没有依赖 使用可拖动&#xff0c;可调整大小或两者兼备定义用于调整大小的句柄限制大小和移动到父元素或自定义选择器将元素捕捉到自定义网格将拖动限制为垂直或水平轴保持纵横比启用触控功能使用自己的样式为句柄提供自己的样式 安装和基本用法 npm install --save vue-d…...

python一次性导出项目用到的依赖

导出依赖列表 如果你用到了Anaconda&#xff0c;记得先激活环境!!!! 下载pipreqs pip install pipreqs 在项目的根目录新建一个run_pipreqs.py文件&#xff0c;复制一下代码&#xff1a; # -*- coding: utf-8 -*- import os import subprocessos.environ["PYTHONIOE…...

移动端网页中的前端视频技术探索

引言 随着移动设备的普及和网络速度的提升&#xff0c;移动端网页中的视频播放已经成为了越来越重要的功能需求。本篇博客将介绍一些在移动端网页中实现前端视频播放的技术探索&#xff0c;并提供详细的代码示例。 1. 基本视频标签 在移动端网页中实现视频播放最基本的方法就…...

题解:ABC277C - Ladder Takahashi

题解&#xff1a;ABC277C - Ladder Takahashi 题目 链接&#xff1a;Atcoder。 链接&#xff1a;洛谷。 难度 算法难度&#xff1a;普及。 思维难度&#xff1a;入门。 调码难度&#xff1a;入门。 综合评价&#xff1a;简单。 算法 深度优先搜索简单图论 思路 把每…...

7.11 Java方法重写

7.11 Java方法重写 这里首先要确定的是重写跟属性没有关系&#xff0c;重写都是方法的重写&#xff0c;与属性无关 带有关键字Static修饰的方法的重写实例 父类实例 package com.baidu.www.oop.demo05;public class B {public static void test(){System.out.println("这…...

Android Stodio编译JNI项目,Cmake出错:Detecting C compiler ABI info - failed

在使用Android Stodio编译JNI项目时出现Cmake错误&#xff0c;报错如下&#xff1a; Execution failed for task :app:configureCMakeDebug[arm64-v8a]. > [CXX1429] error when building with cmake using C:\Users\Dell\AndroidStudioProjects\MyApplication2\app\src\ma…...

6.2 Spring Boot整合MyBatis

1、基于Spring BootMyBatis的学生信息系统的设计与实现案例 基于Spring BootMyBatis实现学生信息的新增、修改、删除、查询功能&#xff0c;并实现MySQL数据库的操作。 MySQL数据库创建学生表&#xff08;t_student&#xff09;&#xff0c;有主键、姓名、年龄、性别、出生日…...

在CentOS 7上使用kubeadm部署Kubernetes集群

如有错误&#xff0c;敬请谅解&#xff01; 此文章仅为本人学习笔记&#xff0c;仅供参考&#xff0c;如有冒犯&#xff0c;请联系作者删除&#xff01;&#xff01; 前言&#xff1a; Kubernetes是一个开源的容器编排平台&#xff0c;用于管理和自动化部署容器化的应用程序。…...

这6个免费设计素材网站,设计师都在用,马住

新手设计师不知道去哪里找素材&#xff0c;那就看看这几个设计师都在用的网站吧&#xff0c;免费、付费、商用素材都有&#xff0c;可根据需求选择&#xff0c;赶紧收藏~ 菜鸟图库 https://www.sucai999.com/?vNTYxMjky 菜鸟图库是一个非常大的素材库&#xff0c;站内包含设…...

uni-app引入sortable列表拖拽,兼容App和H5,拖拽排序。

效果: 拖拽排序 背景&#xff1a; 作为一名前端开发人员&#xff0c;在工作中难免会遇到拖拽功能&#xff0c;分享一个github上一个不错的拖拽js库&#xff0c;能满足我们在项目开发中的需要&#xff0c;下面是我在uniapp中使用SortableJS的使用详细流程&#xff1b; vue开发…...

Redis-内存淘汰算法

Redis可以存多少数据 32位的操作系统默认3G 谁现在用32位啊?我们说64位的 一般来讲是不设上限的 但是我们也可以主动配置maxmemory, maxmemory支持各单位: maxmemory 1024 (默认字节) maxmemory 1024KB maxmemory 1024MB maxmemory 1204GB 当Redis存储超过这个配置值&#…...

如何永久保存微信聊天记录?免费开源工具WeChatMsg完整指南

如何永久保存微信聊天记录&#xff1f;免费开源工具WeChatMsg完整指南 【免费下载链接】WeChatMsg 提取微信聊天记录&#xff0c;将其导出成HTML、Word、CSV文档永久保存&#xff0c;对聊天记录进行分析生成年度聊天报告 项目地址: https://gitcode.com/GitHub_Trending/we/W…...

探索时序并行门控网络TPGN:RNN的崭新继任者

一种RNN的新继任者—时序并行门控网络TPGN&#xff0c;用于时间序列预测。 作为RNN的新继任者。 PGN通过设计的历史信息提取&#xff08;HIE&#xff09;层直接从以前的时间步捕获信息&#xff0c;并利用门通机制选择并将其与当前时间步信息融合。 这将信息传播路径减少到0(1)&…...

SDMatte提示词库共建:分享与收集高效抠图的魔法指令

SDMatte提示词库共建&#xff1a;分享与收集高效抠图的魔法指令 1. 为什么需要提示词库 抠图是设计工作中最常见的需求之一&#xff0c;但每次都要从头开始描述需求既费时又低效。这就好比每次做饭都要从认识食材开始&#xff0c;而不是直接使用现成的菜谱。SDMatte作为智能抠…...

STK 实战:多类型传感器(Sensor)协同探测与可见性分析

1. STK与多传感器协同探测基础 STK&#xff08;Systems Tool Kit&#xff09;是航天领域广泛使用的仿真分析软件&#xff0c;它能够对复杂系统中的传感器进行高精度建模。在实际应用中&#xff0c;单个传感器往往难以满足全方位监测需求&#xff0c;这时就需要多传感器协同工作…...

RPCS3终极指南:在电脑上完美运行PS3游戏的完整教程

RPCS3终极指南&#xff1a;在电脑上完美运行PS3游戏的完整教程 【免费下载链接】rpcs3 PS3 emulator/debugger 项目地址: https://gitcode.com/GitHub_Trending/rp/rpcs3 还在为无法重温经典PS3游戏而烦恼吗&#xff1f;RPCS3作为全球领先的免费开源PlayStation 3模拟器…...

Spark 4.0 新特性Python Data Source API 快速上手

1. 什么是 Python Data Source API Python Data Source API 是 Spark 4.0 引入的新能力&#xff0c;它允许开发者在 Python 中直接实现自定义数据源和数据写出逻辑。换句话说&#xff0c;你可以像实现一个插件一样&#xff0c;为 Spark 增加新的读取来源和写出目标&#xff0c;…...

如何利用多渠道SEO推广提高网站流量

<h2>多渠道SEO推广&#xff1a;如何提高网站流量</h2> <p>在当前竞争激烈的互联网环境中&#xff0c;网站流量是衡量网站成功与否的重要指标之一。如何利用多渠道SEO推广提高网站流量&#xff0c;成为了每一个网站运营者关注的焦点。本文将从问题分析、原因说…...

告别答辩夜战!Paperxie AI PPT:10 分钟把论文变「导师满分」学术演示稿

paperxie-免费查重复率aigc检测/开题报告/毕业论文/智能排版/文献综述/AIPPThttps://www.paperxie.cn/ppt/createhttps://www.paperxie.cn/ppt/create 又到毕业季&#xff0c;当实验室的灯光熬到凌晨&#xff0c;当电脑里的论文终稿定格在最后一页&#xff0c;无数毕业生却陷入…...

别再死记硬背!用Python(SymPy库)自动推导DC-DC变换器的小信号模型

用Python解放双手&#xff1a;SymPy自动推导DC-DC变换器小信号模型的工程实践 当电源工程师面对Buck、Boost电路的小信号模型推导时&#xff0c;那些繁琐的矩阵运算和拉普拉斯变换是否让你头疼不已&#xff1f;传统手工推导不仅耗时费力&#xff0c;还容易在代数运算中出错。本…...

保姆级教程:STM32F103开发第一步,搞定Keil5安装、激活与芯片包(附资源包)

STM32F103开发环境搭建全指南&#xff1a;从Keil5安装到芯片包配置 引言&#xff1a;为什么选择Keil MDK进行STM32开发 对于刚接触STM32微控制器的新手来说&#xff0c;开发环境搭建往往是第一个"拦路虎"。Keil MDK&#xff08;Microcontroller Development Kit&…...