如何使用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


【创作团队】

策 划:沈传越

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

统 稿:沈传越

技术支持:赵文硕

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

技术验证:沈传越

编 辑:沈传越

排 版:沈传越

相关推荐
chao1898448 小时前
基于 SPEA2 的多目标优化算法 MATLAB 实现
开发语言·算法·matlab
赏金术士8 小时前
Kotlin 习题集 · 高级篇
android·开发语言·kotlin
楼兰公子9 小时前
buildroot 在编译rust时裁剪平台类型数量的方法
开发语言·后端·rust
吴声子夜歌10 小时前
Go——并发编程
开发语言·后端·golang
ooseabiscuit10 小时前
Laravel4.x:现代PHP框架的奠基之作
java·开发语言·php
c1s2d3n4cs11 小时前
Qt模仿nlohmann::json进行序列化和反序列化
开发语言·qt·json
AiTop10011 小时前
Claude Code 推出 Agent View:命令行编程正式进入“多线程并发“时代
开发语言·人工智能·ai·aigc
jf加菲猫11 小时前
第21章 Qt WebEngine
开发语言·c++·qt·ui
码农-阿杰12 小时前
深入理解 synchronized 底层实现:从 HotSpot C++ 源码看对象锁与 Monitor 机制
开发语言·c++·
2401_8322981012 小时前
AI智能体监管落地,OpenClaw率先建立行业合规标准
开发语言