首页 星云 工具 资源 星选 资讯 热门工具
:

PDF转图片 完全免费 小红书视频下载 无水印 抖音视频下载 无水印 数字星空

QT QPainter C++测试源代码

后端 3.46KB 1 需要积分: 1
立即下载

资源介绍:

本C++代码用于测试QPainter的drawText函数
#include "mainwindow.h" #include "ui_mainwindow.h" #include #include MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent) , ui(new Ui::MainWindow) { ui->setupUi(this); connect(ui->RectShowpushButton,&QPushButton::clicked,this,&MainWindow::onShowRectpushButtonClicked); connect(ui->TextShowpushButton,&QPushButton::clicked,this,&MainWindow::onShowTextpushButtonClicked); connect(ui->RectClearpushButton,&QPushButton::clicked,this,&MainWindow::toClearView); connect(ui->TextClearpushButton,&QPushButton::clicked,this,&MainWindow::toClearView); m_pPixmap=new QPixmap(800,800); m_pPixmap->fill(Qt::white); initView(); } MainWindow::~MainWindow() { delete ui; } void MainWindow::initView() { m_pPixmap=new QPixmap(800,800); m_pPixmap->fill(Qt::white); QPainter painter(m_pPixmap); painter.translate(400,400); QPen pen; pen.setWidth(1); // 设置线条宽度为1像素 // 可选:设置线条颜色、样式等 pen.setColor(Qt::black); // 设置线条颜色为黑色 pen.setStyle(Qt::DashLine); // 设置线条样式为短实线 painter.setPen(pen); painter.drawLine(0,-400,0,400); painter.drawLine(-400,0,400,0); painter.drawLine(100,1,100,5); painter.drawLine(1,100,5,100); painter.drawText(90,-2,"100"); painter.drawText(390,-2,"x"); painter.drawText(-23,105,"100"); painter.drawText(-10,395,"y"); painter.end(); ui->Viewlabel->setPixmap(*m_pPixmap); } void MainWindow::ShowLOG(QString log) { QString logs=ui->textBrowser->toPlainText(); logs=QTime::currentTime().toString("[hh:mm:ss.zzz]: ")+log+"\n"+logs; ui->textBrowser->clear(); ui->textBrowser->setPlainText(logs); } void MainWindow::onShowRectpushButtonClicked() { QPainter painter(m_pPixmap); painter.translate(400,400); QPen pen; pen.setWidth(1); // 设置线条宽度为1像素 // 可选:设置线条颜色、样式等 pen.setColor(Qt::blue); // 设置线条颜色为黑色 pen.setStyle(Qt::SolidLine); // 设置线条样式为实线 painter.setPen(pen); painter.drawRect(ui->RectXspinBox->value(),ui->RectYspinBox->value(), ui->RectWidthspinBox->value(),ui->RectHeightspinBox->value()); painter.end(); ui->Viewlabel->setPixmap(*m_pPixmap); } void MainWindow::onShowTextpushButtonClicked() { QFont font=ui->fontComboBox->currentFont(); font.setPointSize(ui->FontSizespinBox->value()); QFontMetrics fontMetrics(font); QRect textRect=fontMetrics.boundingRect(ui->TextlineEdit->text()); ShowLOG("QFontMetrics result:\ntext x pos:"+QString::number(textRect.x())+ "\ntext y pos:"+QString::number(textRect.y())+ "\ntext width:"+QString::number(textRect.width())+ "\ntext height:"+QString::number(textRect.height())); QPainter painter(m_pPixmap); painter.translate(400,400); QPen pen; pen.setWidth(1); // 设置线条宽度为1像素 // 可选:设置线条颜色、样式等 pen.setColor(Qt::red); // 设置线条颜色为黑色 pen.setStyle(Qt::SolidLine); // 设置线条样式为实线 painter.setPen(pen); painter.setFont(font); painter.drawText(ui->TextXspinBox->value(),ui->TextYspinBox->value(),ui->TextlineEdit->text()); painter.end(); ui->Viewlabel->setPixmap(*m_pPixmap); } void MainWindow::toClearView() { initView(); }

资源文件列表:

QtPainterTest.zip 大约有5个文件
  1. main.cpp 183B
  2. mainwindow.cpp 3.46KB
  3. mainwindow.h 558B
  4. mainwindow.ui 10.16KB
  5. QtPainterTest.pro 614B
0评论
提交 加载更多评论
其他资源 Linux学习笔记14-EPIT 定时器实验例程
Linux学习笔记14---EPIT 定时器实验例程
计算机操作系统模拟点餐系统课程设计
计算机操作系统模拟点餐系统课程设计
LeNet, AlexNet, VGG-16, SENet.zip
LeNet, AlexNet, VGG-16, SENet.zip
SSM网上旅游信息管理系统(附源码+数据库)06975
(1)注册和登录功能:用户可以注册账号并实现登录,登录后可以查询预定景区景点信息。 (2)景区景点功能:用户可以点击分类按钮选择类别查看景点详情 (3)景点信息管理功能:用户可以通过搜索获取景点信息 (4)购物车功能:用户通过景点详情界面可以查看景点基本信息,包括景点名、景点图片、门票价格、开放时间、景点描述等信息,点击加入购物车后,景点自动放入购物车内。用户对加入购物车的各个景点,提交付款后生成订单出票。 (5)旅游路线功能:用户可以输入地区然后提供适合不同人群的旅游路线。 (6)酒店预订功能:用户可以通过输入城市、价格等查询相应的酒店信息并进行预定操作,预定完后可在我的订单中查询。 (7)美食信息功能:用户可以通过输入地点查看当地美食。 (8)留言框功能:用户可以在上面发表自己的感受,也能看到其他人发表的言论
SSM网上旅游信息管理系统(附源码+数据库)06975 SSM网上旅游信息管理系统(附源码+数据库)06975 SSM网上旅游信息管理系统(附源码+数据库)06975
STM32F103C8T6小系统板 单片机 核心板 STM32开发板学习板
STM32F103C8T6小系统板 单片机 核心板 STM32开发板学习板
计算机操作系统点餐系统实验
计算机操作系统点餐系统实验
计算机操作系统点餐系统实验 计算机操作系统点餐系统实验
【Sb2438】Springboot基于html5的花艺网站YBFX512 鲜花录像.zip
【Sb2438】Springboot基于html5的花艺网站YBFX512 鲜花录像.zip
SSM流浪动物救助平台 源码38178
SSM流浪动物救助平台 源码38178
SSM流浪动物救助平台 源码38178 SSM流浪动物救助平台 源码38178 SSM流浪动物救助平台 源码38178