如何使用Qt5在窗口中显示矩形(v0.1.3)(上)

作者:赵文硕,沈传越

明德融创工作室(Minter Fusion Studio, MFS) 出品

本文介绍的所有步骤均经过测试复现。


如何使用Qt5在窗口中显示矩形(v0.1.3)(下)

一、术语

【Qt Widget】

Qt基础界面组件,是所有可绘制界面元素的基类,窗口、按钮、矩形绘制区域均基于Widget实现。

【QPainter】

Qt绘图工具类,用于在Widget上绘制矩形、直线、文字、图片等2D图形。

【paintEvent】

Qt窗口重绘事件,窗口显示、刷新时自动触发,绘图代码必须写在此事件中。

【QRect】

Qt矩形数据结构,用于定义矩形的坐标、宽度、高度。

【Qt Creator】

Qt官方集成开发环境,用于创建、编写、编译、运行Qt项目。

【setWindowTitle】

Qt窗口标题设置函数,用于修改窗口名称。

【setStyleSheet】

Qt样式表函数,可快速设置窗口背景颜色、控件样式等,语法简洁易操作。

【setPen】

QPainter的绘图设置函数,专门用于设置矩形边框的颜色、线条粗细。

【setBrush】

QPainter的绘图设置函数,专门用于设置矩形内部的填充颜色。

三、软硬件环境

所有开发步骤在Windows 11下的VMWare虚拟机上开发完成。

(一)开发环境

1. 硬件环境

(1)CPU:x86,4核

(2)内存:8G

(3)显存:32M

2. 软件环境

(1)Windows 11家庭版

(2)VMware Workstation Pro 17.6.3 build-24583834

(3)openKylin 2.0 SP2

(4)Qt 5.15.10(GCC 12.2.0, 64bit)

(5)Qt Creator 6.0.2

(二)测试验证环境

1. 硬件环境

(1)中央处理器(CPU):11th Gen Intel(R) Core(TM) i5-1155G7 @ 2.50GHz (2.50 GHz)

(2)内存:24G

(3)显存:128M

2. 软件环境

(1)Windows 11 家庭中文版(26200.8246)64 位操作系统

(2)Oracle VirtualBox,版本 7.2.6 r172322 (Qt6.8.0 on windows)

(3)openKylin-Desktop-V2.0-SP2-20260115-x86_64

(4)Qt 5.15.10(GCC 12.2.0, 64bit)

(5)Qt Creator 6.0.2

三、操作步骤

步骤1 启动Qt Creator并新建项目

  1. 点击openKylin任务栏最左侧"开始菜单"图标(如图1所示),在开始菜单中找到Qt Creator图标(如图2)并点击启动Qt Creator,打开如图3所示的Qt Creator欢迎界面。

图1 openKylin 2.0"开始菜单"图标

图2 Qt Creator图标

图3 Qt Creator欢迎界面

  1. 在成功打开Qt Creator欢迎界面(如图3)后,点击左上角「文件」菜单(如图4),选择「新建文件或项目」(如图5),或使用快捷键Ctrl+N快速打开。

图4 「文件」菜单

图5 「新建文件或项目」菜单项

  1. 在弹出的新建项目窗口中,从左侧Projects列表选择分类,在中间模板列表中选择「Qt Widgets Application」(如图6),点击窗口右下角如图7所示的「Choose...」按钮。

图6 选择「Qt Widgets Application」

图7 「Choose...」按钮

  1. 在Project Location(项目路径)设置界面(如图8),在「名称」一栏中填写Rectangle,「创建路径」选择不含中文、空格及特殊字符的路径(避免后续编译报错),点击「下一步(N)」。后续步骤均按默认设置点击「下一步(N)」,最后点击「完成(F)」按钮,完成项目创建。

图8 Project Location(项目路径)设置界面


如何使用Qt5在窗口中显示矩形(v0.1.3)(下)


【版本信息】

版 本:0.1.0

完成时间:2026-04-22

第一次发布时间:2026-04-22

最后更新时间:2026-04-22


【创作团队】

策 划:沈传越

文字创作:赵文硕,沈传越

统 稿:沈传越

技术支持:赵文硕

图片采集:赵文硕,沈传越

技术验证:沈传越

编 辑:沈传越

排 版:沈传越

相关推荐
坚定学代码5 分钟前
static在c++中的使用
开发语言·c++
云雀衔光1 小时前
Java Spring AI MCP:在 Spring 里把 AI 接上你的业务系统
java·开发语言·人工智能·后端·测试工具·spring
重生之小比特1 小时前
【Java SE】数据类型与变量
java·开发语言·python
Yeniden1 小时前
Java 后端从零到企业级:第1篇 Java 基础语法——变量、数据类型与运算符
java·开发语言·apache
luj_17681 小时前
罚球线右移破防新策略
c语言·开发语言·网络·经验分享·算法
legendary_1631 小时前
PD‑SINK芯片在无协议后端负载中的工程应用
c语言·开发语言·人工智能·智能手机·计算机外设
Nuanyt1 小时前
JVM常见核心知识梳理02 类加载 字节码技术 双亲委派 Java内存模型 JMM 并发底层 volatile synchronized 常见排障与调优工具
java·开发语言·jvm
liliangcsdn2 小时前
IC计算-前向/远期收益计算和代码示例
开发语言·python·pandas
小溪学编程2 小时前
Java ListIterator 接口详解:双向遍历与列表修改的利器
java·开发语言·windows
影视飓风TIM2 小时前
C++11 新特性:Lambda表达式、std::function与std::bind
开发语言·c++