QT窗体绘图QPainter

news/2025/3/14 1:10:10/

QPainter

INSCODE AI 创作助手:
QPainter是Qt中的一个类,用于在窗口、图像或其他用户界面上绘制图形和文本。它提供了一些方便的方法来画线、矩形、圆、多边形和文本

QPainter绘图函数

INSCODE AI 创作助手:
QPainter是Qt中一个用于绘图的类,它提供了一系列的绘图函数。以下是一些常用的绘图函数:
void QPainter::drawLine(int x1, int y1, int x2, int y2):绘制一条从(x1, y1)到(x2, y2)的直线。
void QPainter::drawRect(int x, int y, int width, int height):绘制一个左上角坐标为(x,y),宽为width,高为height的矩形。
void QPainter::drawEllipse(int x, int y, int width, int height):绘制一个左上角坐标为(x,y),宽为width,高为height的椭圆。
void QPainter::drawArc(int x, int y, int width, int height, int startAngle, int spanAngle):绘制一个左上角坐标为(x,y),宽为width,高为height的椭圆弧,从startAngle开始,扫过spanAngle度。
void QPainter::drawPixmap(int x, int y, const QPixmap& pixmap):绘制一个pixmap图像,左上角坐标为(x,y)。
void QPainter::drawText(int x, int y, const QString& text):在点(x,y)的位置绘制一行文本。
void QPainter::setPen(const QPen& pen):设置画笔,用于绘制线条和轮廓。
void QPainter::setBrush(const QBrush& brush):设置画刷,用于填充形状和区域。
以上是常用的绘图函数,QPainter提供了更多的绘图函数,可以根据需要选择使用。

包含头文件


#include <QPainter>

QPainter能够在任何QPaintDevice上绘图,如QImage, QOpenGLPaintDevice, QPagedPaintDevice, QPaintDeviceWindow, QPicture, and QPixmap
当被绘制的设备是一个widget的时候,QPainter只能在paintEvent()函数中或者被该函数调用的函数当中使用
在这里插入图片描述
Qt::BrushStyle
在这里插入图片描述
Qt::PenStyle
在这里插入图片描述
qt窗体区域图
在这里插入图片描述

在窗体上进行绘图代码


void MainWindow::paintEvent(QPaintEvent *event){QPainter painter(this);//反走样painter.setRenderHint(QPainter::Antialiasing, true);//画背景图painter.drawPixmap(400,30, 200, 180, QPixmap(":/new/prefix1/pic.jpg"));//定义画笔QPen pen;pen.setWidth(2);//设置线宽pen.setColor(QColor(222,255,55));//颜色pen.setStyle(Qt::SolidLine);//样式//画刷QBrush brush;brush.setColor(Qt::black);//颜色brush.setStyle(Qt::SolidPattern);//样式//设置画笔画刷painter.setPen(pen);painter.setBrush(brush);//画直线painter.drawLine(50,50,150,50);painter.drawLine(20,50,250,150 );//画矩形painter.drawRect(70,200,100,50);//画椭圆painter.drawEllipse(QPoint(270,150),50,80);//画文字QFont font;font.setFamily("MV Boli");//文字字体font.setPixelSize(20);//文字大小pen.setColor(QColor(0,255,55));//文字颜色painter.setFont(font);painter.setPen(pen);painter.drawText(200, 300, "Qt Creator 3.4.2 (opensource)");//文本内容}

在这里插入图片描述


http://www.ppmy.cn/news/75188.html

相关文章

Vs+Qt+C++电梯调度控制系统

程序示例精选 VsQtC电梯调度控制系统 如需安装运行环境或远程调试&#xff0c;见文章底部个人QQ名片&#xff0c;由专业技术人员远程协助&#xff01; 前言 这篇博客针对<<VsQtC电梯调度控制系统>>编写代码&#xff0c;代码整洁&#xff0c;规则&#xff0c;易读。…

第二章 逻辑分类模型

目录 一、逻辑回归基本模型二、处理多维特征输入三、加载数据集四、多分类问题 一、逻辑回归基本模型 基本模型&#xff1a; y ^ σ ( x ∗ ω b ) \hat{y} \sigma (x * \omega b) y^​σ(x∗ωb)&#xff0c;其中 σ ( ) \sigma() σ() 表示 sigmod 函数 σ ( x ) 1 1…

已解决python使用pymysql向mysql数据库插入数据报错pymysql.err.DataError: (1366, ‘‘)

已解决&#xff0c;在python代码是使用pymysql向mysql数据库插入数据时报错pymysql.err.DataError: (1366, ) 问题描述 我从某个网页上抓取并解析了一段html代码&#xff0c;然后将html代码转为utf-8格式&#xff0c;之后将html代码作为数据表的一个属性存入mysql数据库中&…

第三十八章 梦中接龙

回到地下一层&#xff0c;不忍和尚仍保持着刚才的姿势&#xff0c;面前却多了一套僧袍。 “来&#xff0c;试试。”没等巴哥奔念诵‘阿弥陀佛’四字诀&#xff0c;不忍抢先发出心电。 耐不住好奇&#xff0c;巴哥奔拾起僧衣轻轻一抖。 藕丝般黏稠的褐色连体长睡衣瞬间将她的手掌…

python+django音乐推荐网站vue

为此开发了本音乐推介网站 &#xff0c;为用户提供一个基于音乐推介网站&#xff0c;同时方便管理员&#xff1b;首页、个人中心、用户管理&#xff0c;类型信息管理、乐器类型管理、歌曲信息管理、戏曲信息管理、MV专区管理、付费音乐管理、订单信息管理、音乐文件管理、论坛管…

Spark基础学习笔记----RDD检查点与共享变量

零、本讲学习目标 了解RDD容错机制理解RDD检查点机制的特点与用处理解共享变量的类别、特点与使用 一、RDD容错机制 当Spark集群中的某一个节点由于宕机导致数据丢失&#xff0c;则可以通过Spark中的RDD进行容错恢复已经丢失的数据。RDD提供了两种故障恢复的方式&#xff0c…

Metal入门学习:绘制渲染三角形

一、编程指南PDF下载链接(中英文档&#xff09; 1、Metal编程指南PDF链接 https://github.com/dennie-lee/ios_tech_record/raw/main/Metal学习PDF/Metal 编程指南.pdf 2、Metal着色语言(Metal Shader Language:简称MSL)编程指南PDF链接 https://github.com/dennie-lee/ios_te…

UE5 C++类如何读取Excel配置表?

UE5 插件开发指南 前言0 如何编写读取数据的结构体?1 如何读取数据?1.0 如何获取数据资产的路径?2 如何调用商店子系统来读取数据?前言 虚幻引擎兼容CSV和JSON格式的数据结构,这里的CSV是Excel表格的保存格式,如下图所示: 打开任意Excel表格,点击文件菜单,然后鼠标悬浮到…