Qt wifi控件绘制
时间:2018-12-28
本文章向大家介绍Qt wifi控件绘制,主要包括Qt wifi控件绘制使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
QQ:609162385
https://blog.csdn.net/cqltbe131421
绘制方法:
QPainter painter(this);
painter.save();
painter.setPen(Qt::NoPen);
QLinearGradient bgGradient(QPointF(0, 0), QPointF(0, height()));
bgGradient.setColorAt(0.0, QColor(0, 0, 0));
bgGradient.setColorAt(1.0, QColor(0, 0, 0));
painter.setBrush(bgGradient);
painter.drawRect(rect());
painter.restore();
painter.translate(width()/2, height()*0.85);
painter.setRenderHint(QPainter::Antialiasing, true);
//绘制背景条
gradientArc(&painter, radius*0.8, 45, 90, arcHeight, qRgb(54, 54, 54));
gradientArc(&painter, radius*0.6, 45, 90, arcHeight, qRgb(54, 54, 54));
gradientArc(&painter, radius*0.4, 45, 90, arcHeight, qRgb(54, 54, 54));
gradientArc(&painter, radius*0.2, 45, 90, arcHeight, qRgb(54, 54, 54));
if(wifiQuality == 0){
}else if(wifiQuality == 1)
{
gradientArc(&painter, radius*0.2, 45, 90, arcHeight, qRgb(255, 255, 255));
}else if(wifiQuality == 2)
{
gradientArc(&painter, radius*0.4, 45, 90, arcHeight, qRgb(255, 255, 255));
gradientArc(&painter, radius*0.2, 45, 90, arcHeight, qRgb(255, 255, 255));
}else if(wifiQuality == 3)
{
gradientArc(&painter, radius*0.6, 45, 90, arcHeight, qRgb(255, 255, 255));
gradientArc(&painter, radius*0.4, 45, 90, arcHeight, qRgb(255, 255, 255));
gradientArc(&painter, radius*0.2, 45, 90, arcHeight, qRgb(255, 255, 255));
}else if(wifiQuality == 4)
{
gradientArc(&painter, radius*0.8, 45, 90, arcHeight, qRgb(255, 255, 255));
gradientArc(&painter, radius*0.6, 45, 90, arcHeight, qRgb(255, 255, 255));
gradientArc(&painter, radius*0.4, 45, 90, arcHeight, qRgb(255, 255, 255));
gradientArc(&painter, radius*0.2, 45, 90, arcHeight, qRgb(255, 255, 255));
}
painter.translate(0, height()*0.05);
painter.setBrush(QColor(255, 255, 255));
painter.drawEllipse(QPointF(0,0),arcLength,arcLength);
- Spring 常见问题与解决方法
- 如何通过css控制内容显示顺序 第二行的内容优先显示
- 杨廷琨 - 用SQL解析神奇的扑克牌魔术
- Spring boot with Spring security
- Spring RestFul and RestTemplate
- Spring boot with Velocity template
- Oracle 11g R2 RAC 高可用连接特性 – SCAN 详解
- Spring boot · 链接池配置
- Linux下命令行图片格式转换
- 用SQL解一道有趣的数学题:Gauss和Poincare
- OpenSSL 转换证书格式
- 电子邮件服务器DKIM配置
- 自相矛盾:一个进程可以自成死锁么?
- 数据库安全·开发加密插件
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- Hibernate入门篇(三)——编写第一个Hibernate例子
- RabbitMQ与Kafka选型对比
- Hibernate进阶篇(三)——transaction简介
- Elastic search N-gram tokenizer
- java.io.IOException: com.esotericsoftware.kryo.KryoException: Encountered unregistered class ID: 110
- io.protostuff.runtime.RuntimeUnsafeFieldFactory cannot have the same number
- dubbo 调用报Null 空指针 ,可能并不是真正的空指针
- Hibernate单表操作(四)——组件属性
- Dubbo consumer消费端启动报错java.lang.RuntimeException: [source error] not available in a static method: h
- Groovy小记it关键字和IDE报错
- 05 . Jenkins定制主题和设置项目构建信息输出颜色
- 腾讯云物联网平台使用报告
- 01 . PostgreSQL简介部署
- 01 . Git常用命令及方法和分支管理
- 记一次公司mssql server密码频繁被改的事件