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

Qt中在QLabel上画点,重写QLabel类

Qt中在QLabel上画点,重写QLabel类

QT中label进行绘图

1.首先新建一个类,让这个类继承QLabel
2.在类中对鼠标点击事件及绘图事件进行重写
3.然后在UI框架下添加label控件,
4.右键label控件,添加重写的类,将其提升为刚刚写好的类

mylabel.h

#ifndef MYLABEL_H
#define MYLABEL_H#include <QObject>
#include <QLabel>
#include <QMouseEvent>
#include <QPainter>
#include <QPen>
#include <QPoint>class MyLabel : public QLabel{Q_OBJECTpublic:int labelWidth;int labelHeight;struct pointCoord{int x;int y;};std::vector<pointCoord> coordList;bool paintEnable = true;public:explicit MyLabel(QWidget *parent = 0);void enabelPaint(bool);void mousePressEvent(QMouseEvent *event);void paintEvent(QPaintEvent *event);//    void mouseReleaseEvent(QMouseEvent *event);//    void mouseMoveEvent(QMouseEvent *event);signals:void updatePoint(int x, int y, int labelWidth, int labelHeight);};#endif // MYLABEL_H

mylabel.cpp

#include "mylabel.h"#include <QMessageBox>#include <QString>#include <QDebug>MyLabel::MyLabel(QWidget *parent) : QLabel(parent){
;
}void MyLabel::enabelPaint(bool enable){if (enable){paintEnable = true;} else {paintEnable = false;}}void MyLabel::mousePressEvent(QMouseEvent *event){if (paintEnable){int x = event->position().x();int y = event->position().y();pointCoord coord;coord.x = x;coord.y = y;coordList.push_back(coord);labelWidth = this->width();labelHeight = this->height();emit updatePoint(x, y, labelWidth, labelHeight);update();}}void MyLabel::paintEvent(QPaintEvent *event){QLabel::paintEvent(event);QPainter painter(this);QPen pen;       //设置画笔,颜色、宽度pen.setColor(Qt::red);pen.setWidth(5);painter.setPen(pen);for (auto coord:coordList){painter.drawPoint(coord.x, coord.y);}}

相关文章:

Qt中在QLabel上画点,重写QLabel类

Qt中在QLabel上画点&#xff0c;重写QLabel类 QT中label进行绘图 1.首先新建一个类&#xff0c;让这个类继承QLabel 2.在类中对鼠标点击事件及绘图事件进行重写 3.然后在UI框架下添加label控件&#xff0c; 4.右键label控件&#xff0c;添加重写的类&#xff0c;将其提升为刚…...

ssm+vue小型企业办公自动化系统源码和论文PPT

ssmvue小型企业办公自动化系统源码和论文PPT013 开发工具&#xff1a;idea 数据库mysql5.7(mysql5.7最佳) 数据库链接工具&#xff1a;navcat,小海豚等 开发技术&#xff1a;java ssm tomcat8.5 摘 要 互联网发展至今&#xff0c;无论是其理论还是技术都已经成熟&#xf…...

C++ STL priority_queue

目录 一.认识priority_queue 二. priority_queue的使用 三.仿函数 1.什么是仿函数 2.控制大小堆 3.TopK问题 四.模拟实现priority_queue 1.priority_queue的主要接口框架 2.堆的向上调整算法 3.堆的向下调整算法 4.仿函数控制大小堆 五.priority_queue模拟实现整体代码和测…...

[PyTorch][chapter 50][创建自己的数据集 2]

前言&#xff1a; 这里主要针对图像数据进行预处理.定义了一个 class Pokemon(Dataset) 类&#xff0c;实现 图像数据集加载,划分的基本方法. 目录&#xff1a; 整体框架 __init__ load_images save_csv divide_data __len__ denormalize __g…...

SQL-每日一题【1341. 电影评分】

题目 表&#xff1a;Movies 表&#xff1a;Users 请你编写一个解决方案&#xff1a; 查找评论电影数量最多的用户名。如果出现平局&#xff0c;返回字典序较小的用户名。查找在 February 2020 平均评分最高 的电影名称。如果出现平局&#xff0c;返回字典序较小的电影名称。 …...

基于DBN的伪测量配电网状态估计,DBN的详细原理

目录 背影 DBN神经网络的原理 DBN神经网络的定义 受限玻尔兹曼机(RBM) DBN的伪测量配电网状态估计 基本结构 主要参数 数据 MATALB代码 结果图 展望 背影 DBN是一种深度学习神经网络,拥有提取特征,非监督学习的能力,是一种非常好的分类算法,本文将DBN算法伪测量配电网…...

Python运算符全解析:技巧与案例探究

在Python编程中&#xff0c;运算符是强大的工具&#xff0c;能够使我们在数据处理和逻辑判断方面更加灵活。本篇博客将全面探讨Python中常用的运算符&#xff0c;包括算术、比较、逻辑、赋值、位、成员和身份运算符&#xff0c;通过实际案例为你展示如何妙用运算符解决问题。 …...

NPCon:AI模型技术与应用峰会北京站 (参会感受)

8月12日&#xff0c;我有幸参加了在北京皇家格兰云天大酒店举行的“AI模型技术与应用峰会”。 这次会议邀请了很多技术大咖&#xff0c;他们围绕&#xff1a; 六大论点 大模型涌现&#xff0c;如何部署训练架构与算力芯片 LLM 应用技术栈与Agent全景解析 视觉GPU推理服务部署 …...

为什么爬虫要用高匿代理IP?高匿代理IP有什么优点

只要搜代理IP&#xff0c;度娘就能给我们跳出很多品牌的推广&#xff0c;比如我们青果网路的。 正如你所看到的&#xff0c;我们厂商很多宣传用词都会用到高匿这2字。 这是为什么呢&#xff1f;高匿IP有那么重要吗&#xff1f; 这就需要我们从HTTP代理应用最多最广的&#xf…...

【JavaWeb】MySQL约束、事务、多表查询

1 约束 PRIMARY KEY 主键约束 UNIQUE 唯一约束 NOT NULL 非空约束 DEFAULT 默认值约束 FOREIGN KEY 外键约束 主键 主键值必须唯一且非空&#xff1b;每个表必须有一个主键 建表时主键约束 CREATE TABLE 表名 (字段名 字段类型 PRIMARY KEY,字段名 字段类型 );CR…...

【并发编程】自研数据同步工具优化:创建线程池多线程异步去分页调用其他服务接口获取海量数据

文章目录 场景&#xff1a;解决方案 场景&#xff1a; 前段时间在做一个数据同步工具&#xff0c;其中一个服务的任务是调用A服务的接口&#xff0c;将数据库中指定数据请求过来&#xff0c;交给kafka去判断哪些数据是需要新增&#xff0c;哪些数据是需要修改的。 刚开始的设…...

七、dokcer-compose部署springboot的jar

1、准备 打包后包名为 ruoyi-admin.jar 增加接口 httpL//{ip}:{port}/common/test/han #环境变量预application.yml 中REDIS_HOSTt的值&#xff0c;去环境变量去找&#xff1b;如果找不到REDIS_HOST就用myredis 1、Dockerfile FROM hlw/java:8-jreRUN ln -sf /usr/share/z…...

k8s 使用 containerd 运行时配置 http 私服

简介 Kubernetes 从 v1.20 开始弃用 Docker&#xff0c;并推荐用户切换到基于容器运行时接口&#xff08;CRI&#xff09;的容器引擎&#xff0c;如 containerd、cri-o 等。 目前使用的环境中使用了 Kubernetes v1.22.3&#xff0c;containerd 1.4.3&#xff0c;containerd 在…...

【新品发布】ChatWork企业知识库系统源码

系统简介 基于前后端分离架构以及Vue3、uni-app、ThinkPHP6.x、PostgreSQL、pgvector技术栈开发&#xff0c;包含PC端、H5端。 ChatWork支持问答式和文档式知识库&#xff0c;能够导入txt、doc、docx、pdf、md等多种格式文档。 导入数据完成向量化训练后&#xff0c;用户提问…...

疫情打卡 vue+springboot疾病防控管理系统java jsp源代码

本项目为前几天收费帮学妹做的一个项目&#xff0c;Java EE JSP项目&#xff0c;在工作环境中基本使用不到&#xff0c;但是很多学校把这个当作编程入门的项目来做&#xff0c;故分享出本项目供初学者参考。 一、项目描述 疫情打卡 vuespringboot 系统有1权限&#xff1a;管理…...

python --连接websocket

如果只是模拟js端发送接收的话&#xff0c;已经有了websocket server的话&#xff0c;只有client就好了 pip install websocket-client#-*- encoding:utf-8 -*-import sys sys.path.append("..") from socket import * import json, time, threading from websocket…...

数据库内日期类型数据大于小于条件查找注意事项

只传date格式的日期取查datetime的字段的话默认是 00:00:00 日期类型字符串需要使用 ’ ’ 单引号括住 使用大于小于条件查询某一天的日期数据 前后判断条件不能是同一天 一个例子 数据库内数据&#xff1a; 查询2023-08-14之后的数据&#xff1a; select * from tetst…...

网易有道押宝大模型,打响智能硬件突围战

本文转载自产业科技 自今年开年以来&#xff0c;AI大模型这场火势能不减&#xff0c;如今已燃到教育领域。 7月26日&#xff0c;网易有道举办了“powered by子曰”教育大模型应用成果发布会&#xff0c;推出国内首个教育领域垂直大模型“子曰”&#xff0c;并一口气发布了基于…...

KAFKA第二课之生产者(面试重点)

生产者学习 1.1 生产者消息发送流程 在消息发送的过程中&#xff0c;涉及到了两个线程——main线程和Sender线程。在main线程中创建了一个双端队列RecordAccumulator。main线程将消息发送给RecordAccumulator&#xff0c;Sender线程不断从RecordAccumulator中拉取消息发送到K…...

Mybatis 源码 ∞ :杂七杂八

文章目录 一、前言二、TypeHandler三、KeyGenerator四、Plugin1 Interceptor2 org.apache.ibatis.plugin.Plugin3. 调用场景 五、Mybatis 嵌套映射 BUG1. 示例2. 原因3. 解决方案 六、discriminator 标签七、其他1. RowBounds2. ResultHandler3. MapKey 一、前言 Mybatis 官网…...

后端消息投递可靠性:基于 RabbitMQ 的“双重防线-幂等闭环”模式

后端消息投递可靠性&#xff1a;基于 RabbitMQ 的“双重防线-幂等闭环”模式 一、 发送核心&#xff1a;rabbitTemplate.convertAndSend 重载全览 在 RabbitMQ 的“中控-工人”模式中&#xff0c;中控&#xff08;生产者&#xff09;发送指令的形式决定了任务的可靠性深度。 1.…...

hadoop3.3.6上搭建Hbase2.5.13集群

一、什么是Hbase hadoop的局限性 hadoop主要是实现批处理的处理,并且通过顺序方式访问数据 要查找数据必须搜索整个数据集,如果要进行随机读写数据,效率低下 Hbase是Bigtable的开源java版本,是建立在HDFS之上,提供高可靠性、高性能、列存储、可伸缩、实时读写的NoSQL数据…...

利用快马平台快速构建类FinalShell服务器监控Web原型

最近在折腾服务器监控工具&#xff0c;发现FinalShell确实好用&#xff0c;但有时候团队协作或者临时演示时&#xff0c;还是需要一个轻量级的Web版监控面板。正好发现了InsCode(快马)平台&#xff0c;用它快速搭建了一个原型&#xff0c;分享下实现思路。 整体架构设计 这个监…...

一键定位手机号码:免费开源的地理位置查询神器

一键定位手机号码&#xff1a;免费开源的地理位置查询神器 【免费下载链接】location-to-phone-number This a project to search a location of a specified phone number, and locate the map to the phone number location. 项目地址: https://gitcode.com/gh_mirrors/lo/…...

OpenClaw+SecGPT-14B:个人安全实验室自动化搭建全指南

OpenClawSecGPT-14B&#xff1a;个人安全实验室自动化搭建全指南 1. 为什么需要自动化安全实验室 作为一名长期从事安全研究的工程师&#xff0c;我深刻体会到传统手工分析的低效与局限。每次分析新样本时&#xff0c;都需要重复搭建环境、配置工具、收集威胁情报&#xff0c…...

OpenClaw+千问3.5-35B-A3B-FP8:个人健康数据分析助手

OpenClaw千问3.5-35B-A3B-FP8&#xff1a;个人健康数据分析助手 1. 为什么需要个人健康数据分析助手 去年体检后&#xff0c;我面对几十页的检测报告和智能手环积累的三个月运动数据&#xff0c;突然意识到一个尴尬的事实&#xff1a;这些数据躺在不同平台里&#xff0c;既不…...

告别烧录失败!深度解析迪文T5L串口屏(DMG80480T070_05WTR)工程配置与文件系统的那些‘潜规则’

告别烧录失败&#xff01;深度解析迪文T5L串口屏工程配置与文件系统的那些‘潜规则’ 当你第一次拿到DMG80480T070_05WTR这款迪文T5L串口屏时&#xff0c;可能会被它强大的功能所吸引——200MHz双核CPU、24bit真彩色显示、支持多种UI元素和二次开发能力。但很快&#xff0c;你就…...

快速验证CNN结构:用快马平台一键生成手写数字识别原型

快速验证CNN结构&#xff1a;用快马平台一键生成手写数字识别原型 最近在学深度学习&#xff0c;想试试用卷积神经网络(CNN)做个手写数字识别的小项目。传统从零开始写代码太费时间了&#xff0c;光是搭环境、调参数就能折腾半天。后来发现InsCode(快马)平台能直接生成可运行的…...

数聚智连转战港交所:年营收16亿 净利4340万 蓝标与险峰是股东

雷递网 雷建平 4月2日北京数聚智连科技股份有限公司&#xff08;简称&#xff1a;“数聚智连”&#xff09;日前递交招股书&#xff0c;准备在港交所上市。数聚智连曾向深交所创业板递交招股书&#xff0c;计划募资8亿元&#xff0c;最终IPO被终止&#xff0c;此番是数聚智连转…...

PyTorch 2.8镜像行业落地:教育机构AI教学平台+视频课件自动生成实践

PyTorch 2.8镜像行业落地&#xff1a;教育机构AI教学平台视频课件自动生成实践 1. 教育行业AI转型的机遇与挑战 教育行业正经历数字化转型浪潮&#xff0c;传统教学方式面临三大核心痛点&#xff1a; 内容生产效率低&#xff1a;教师手工制作课件平均耗时3-5小时/课时个性化…...