一步步学Qt,第六天-QPainter应用

红帽Qt制作简单刻度尺 用Qt绘制一个简单刻度米尺,实现鼠标左键点击实现刻度尺的顺时针90度旋转,右键点击复原。 立即下载

一步步学Qt,第六天-QPainter应用

看了QPainter,看了一下,不过现在还有一点懵,一开始都不知道如何下手去做,现在好歹把code写出来了,不过,在QRect的定位上,真的很麻烦,因为这个要相对显示屏或者窗体,我一直在想有没有一个可以忽略这两个的办法来定位,现在还在思考中,看看这个程序:

#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <QPainter>
#include <cstdlib>
#include <QRect>
#include <QKeyEvent>
#include <QPen>
#include <QFont>
#include <QDebug>

MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
    ui->setupUi(this);
    text = "";
    setMinimumSize(400,300);
    setMaximumSize(400,300);
}

MainWindow::~MainWindow()
{
    delete ui;
}

void MainWindow::paintEvent(QPaintEvent *)
{

    QPainter p(this);
    QPen pen;
    pen.setColor(Qt::red);
    p.setPen(pen);
    QFont font("Arial",14,QFont::Normal,true);
    font.setItalic(true);
    p.setFont(font);
    QRect rect(0,10,400,150);
      p.drawText(rect,Qt::AlignCenter,text);
      this->update();
}

void MainWindow::keyPressEvent(QKeyEvent *e)
{
    if (e->key() == Qt::Key_Return){
        text = ui->lineEdit->text();
        ui->lineEdit->setText("");
    }
}

运行效果:

程序刚启动的时候

在QLineEdit中写入数据

回车事件之后,把之前QlineEdit中的数据通过QPainter的Drawtext绘制,且把QLineEdit置空


基于单文档和多文档,模拟word文档中标尺 立即下载

相关推荐

QT下自定义控件的拖动,标尺,控件的旋转,ARM平台下运行,支持freetype ,syszuxpinyin

自己设计的关于嵌入式ARM下运行界面,支持自定义控件的拖动,单击双击,旋转,支持syszuxpinyin键盘输入,支持串口功能,支持滚动条的自动滚动

QT第六天

使用QT绘图,完成仪表盘绘制。

2303_77646460的博客 770

基于QT的水位标尺显示仪

一个基于QT Widget 的水位显示,带标尺和动态效果,四个颜色可选

QT开发学习笔记(第六天)

QPaintDevice是一个二维空间的抽象,这个二维空间允许QPainter在其上面进行绘制,也就是QPainter工作的空间;而对于纸张、屏幕而言,肯定要使用不同的画笔绘制,为了统一使用一种画笔,我们设计了QPaintEngine类,这个类让不同的纸张、屏幕都能使用一种画笔。我们知道,计算机里面的数据都是使用二进制表示的。(2)QBitmap是QPixmap的一个子类,它的色深限定为1,可以使用 (3)QPixmap的isQBitmap()函数来确定这个QPixmap是不是一个QBitmap。

Google_666的博客 81

滑动刻度尺滑动刻度尺。详情 有图有真相 http://blog.youkuaiyun.com/liudao7994/article/det

滑动刻度尺。详情 有图有真相 http://blog.youkuaiyun.com/liudao7994/article/details/45966913

基于QT的滑动标尺

基于QT5的滑动标尺,三种标尺风格,带刻度,带指示箭头

四小时学习opencv+qt系列(第六天)

四小时学习opencv+qt系列(第六天) 一、图形视图框架 三大类: 场景(QGraphicsScene类) 视图(QGraphicsView类) 图形对象元素(QGraphicsItem及其子类) 1.场景-视图-对象元素架构 场景是用于管理对象元素的实例,包含他们的同时还将事件传递给他们。 视图是用于可视化场景的内容,还负责将事件传递给场景。 对象元素是场景包含的对象元素,可以是线、矩形、图像等。 实例: (1)创建名为Graphics_Viewer的应用程序,基类选择QMainWindow,

visual_eagle的博客 2561

高等数学/概率论/数理统计/线性代数/离散数学面试-核心概念-问题理解

特征值与特征向量是线性代数中的概念,它们与线性变换有关。在线性变换中,如果存在非零向量 v ,使得当该向量通过变换后,其方向不变,只是长度发生了变化,那么这个向量 v 就是特征向量。而这个长度变化的比例因子,即变换前后向量长度的比值,称为特征值。数学公式表示:通俗易懂的解释:想象一下,你有一个可以伸缩的橡皮筋,这个橡皮筋可以代表一个向量。现在,你有一个特殊的机器,它可以改变橡皮筋的形状,但不会改变它延伸的方向。当你把橡皮筋放入机器中,机器会拉伸或压缩橡皮筋,但橡皮筋的方向保持不变。

m0_64198455的博客 2292

QT第六天作业

【代码】QT第六天作业。

weixin_64507154的博客 566

OpenEuler22.03 LTS下Zabbix7.0监控系统的容器化部署避坑指南(含Docker-Compose完整配置)

本文详细介绍了在OpenEuler22.03 LTS操作系统上容器化部署Zabbix7.0监控系统的完整流程,包括Docker引擎配置、Docker-Compose编排、网络模式选择及性能调优等关键步骤。针对OpenEuler环境下的特殊问题提供了解决方案,帮助用户高效搭建稳定可靠的监控系统。

python9snake的博客 268

PyTorch转ONNX遇到算子不支持?3种实战解决方案+TensorRT适配技巧

本文针对PyTorch模型导出ONNX时常见的算子不支持问题,提供了从诊断到解决的完整实战指南。首先讲解如何精准定位错误根源,随后详细介绍了三种核心解决方案:注册缺失的符号映射、实现自定义算子,以及为TensorRT开发插件的终极落地方案。文章还分享了构建稳健部署流水线的工程化实践,帮助开发者系统性地解决模型部署中的算子兼容性挑战。

fern8的博客 843

QT第六天学习

基本事件: 鼠标事件 键盘事件 绘制事件 1.QT中的事件: 事件是对各应用程序需要知道的由应用程序内部或外部产生的事情或动作的通称。 QT中事件的处理: 在QT中使用一个对象来表示一个事件,继承自QEvent类 QT把事件定义 为固定的virtual保护函数,这些函数自动被系统调用 鼠标事件: virtual void mouseDoubleClickEve...

weixin_30748995的博客 95

U8二次开发CO-基于Net8调用COM对象

本文章介绍的U8二次开发CO技术,就是基于微软COM组件技术,使用微软开源的编程框架Net6/7/8/9来调用U8的COM组件,完成基本的登录认证,工作流处理,数据库操作等。

pccai的博客 5501

qt第六天

【代码】qt第六天。

qq_60140199的博客 439

KDD 2025 | 人大团队提出多任务贝叶斯联邦学习算法,同时处理分类和回归

©PaperWeekly 原创 ·作者 |吕俊良单位 |中国人民大学统计学院本文介绍了中国人民大学统计学院的一篇关于多任务贝叶斯联邦学习的文章“Task Diversity in Bayesian Federated Learning: Simultaneous Processing of Classification and Regression”,本文被 KDD 2025 接收,代码已经...

Paper weekly 2746

TensorFlow实战:5步搞定因果推断模型TARNet(附完整代码)

本文提供了一份基于TensorFlow的TARNet因果推断模型实战指南。通过五个清晰步骤,从数据预处理、模型构建到训练评估,详细讲解了如何利用深度模型解决营销评估、疗效分析等场景中的因果效应估计问题,并附有完整代码解决样本不平衡等工程挑战。

python9snake的博客 416

Qt第六天

【代码】Qt第六天。

hahhsssds的博客 534

基于PyTorch+Transformer实现谣言检测系统

本项目使用基于`PyTorch+Transformer`的谣言检测模型,将文本中的谣言事件进行连续向量化,通过一维卷积神经网络的学习训练来挖掘表示文本深层的特征,避免了特征构建的问题,并能发现那些不容易被人发现的特征,从而产生更好的效果。

优快云 精品推荐 6349

第六周编程学习(4.3-4.6/4.14-4.16)

它的主要思想是,将数据点投影到回归平面上,并找到一个回归平面,使得每个数据点在平面上的投影与其实际值之间的距离之和最小。因此,OLS是一种适用于简单线性回归的方法,而CLS则适用于更复杂的线性回归模型,尤其是在存在多个自变量和测量误差的情况下。随机森林回归:适用于处理过拟合和高维数据问题的场景,通过构建多个决策树,采用随机特征选择和自助重采样技术,从而可以得到更加鲁棒的回归模型。梯度提升回归:适用于需要得到更加准确的回归模型的场景,通过迭代地加入新的回归树,使得每个回归树的预测结果越来越接近真实值。

z377989129的博客 1031

【AI就业干货12】机器学习八股文速通:从损失函数到 XGBoost,一篇带走全部面试点

本文总结了机器学习面试的核心知识点,涵盖监督与非监督学习、线性模型、正则化、决策树、KNN/K-means、SVM、集成学习、梯度下降、评估指标、特征工程、降维、概率模型等内容。重点包括:损失函数选择(MSE/交叉熵)、正则化作用(L1稀疏/L2平滑)、决策树划分准则、集成学习方法(Bagging降方差/Boosting降偏差)、XGBoost优化等。提供了30秒速记口诀和XGBoost代码示例,帮助快速掌握面试要点。全文采用公式+代码+口诀的形式,系统梳理了机器学习从理论到实践的常见考点。

m0_51738372的博客 731

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

QT学习记录(一)课前了解,QT介绍(待补充)

小问题,交给我

qq_42908901的博客 396

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

Qt _六天的学习路线

六天的学习路线:第一天: 1、Qt的介绍 2、Qt的框架 3、项目文件(.pro) 4、第一个Qt程序(hello Qt) 5、父窗口和子窗口的区别(控件,部件,构件) 6、信号和槽 7、坐标系统 8、内存回收机制 new delete 9、带菜单栏的窗口 10、对话框 第二天: 1、QtCreator 设计器的使用 2...

weixin_30257433的博客 558

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

Qt5(黑马程序员)

为什么学习QT 1)市场上任何一款产品都几乎带有图形界面,Android、IOS编程无非是GUI app编程。另外QT跨平台特性,Qt写的程序可以在Android、IOS平台上运行。 2)锻炼编程能力。GUI编程比后台编程更能锻炼人,除核心数据处理外,还需要协调界面。 3)为了更好的使用C++,学习Qt的框架。(QT是C++实现的应用程序框架) 如何学习QT 库函数的调用,只需要知道功能、入口参数、返回值。灵活应用帮助文档。 第一天学习内容 1、Qt的介绍 2、Qt的框架 3、项目文件(.pro) 4、第一

w_20_f的博客 779

Qt6天学习教程目录

第一天: Qt的介绍 Qt的框架 项目文件(.pro) 第一个Qt程序(hello qt) 父窗口和子窗口的区别(控件,部件,构件) 信号和槽 坐标系统 内存回收机制 带菜单栏的窗口 对话框 第二天: QtCreator设计器的使用 常用控件 布局 自定义控件 常用事件的处理 第三天: QPainter绘图 绘图设备(QPixmap,QImage,QBitmap,...

Hugh677的博客 1476
上一篇: Opengl开发环境搭建
下一篇: 修改chrome的页面背景颜色
Qicz
博客等级 码龄16年 56粉丝 122原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值