Qt项目——文本编辑器(Bug/疑问)

项目地址:GitHub - Outlier9/CatEditor: Cat文本编辑器--Qt

有帮助的话各位点点 star 啦,感谢!

如果有需要学习该项目的人,觉得看文档较为困难,可以加我联系方式,给github点个star后可免费提供学习视频!!!

本篇是针对我在做项目的时候遇到的bug和一些疑问的总结,综合前几部分看

另外在github上我会进行一些后续bug的修复更新,如有其他bug可在github上查看

三、Bug/疑问集合

1.关于子窗口创建的疑问

疑惑点:在写该项目的时候,我对控件的了解只是知道最基本的常用控件,诸如使用到的MDI Area并不熟悉,因此在实现新建文档的功能的时候我会产生一个疑问: 我并没有发现new的语句,这个窗口是怎么创建的?再三检查相关代码,整个过程中我只创建了Chilewnd实例ChileWnd *childwnd = new ChileWnd;并添加到了MDIui->mdiArea->addSubWindow(childwnd);

但是这个类属于自定义类,且类的实现过程中,更没有创建的语句。按常例来说,假如我要创建一个按钮控件,我要写new QPushButton();然后将其添加到ui中,所以对此处我向GPT进行求问:

解答:当将一个 ChileWnd 实例添加到 QMdiArea 中时,它会自动成为一个子窗口。ChileWnd 本质上是继承自 QTextEdit 的一个自定义类,因此它具备 QTextEdit 的所有功能,并且可以被添加到 QMdiArea 中管理。在 Qt 的 QMdiArea 中,任何继承自 QWidget****的类都可以作为子窗口添加,不需要特别考虑类型,只要是 QWidget****或其子类都可以。你可以将其理解为任何可以显示的控件都可以添加到 QMdiArea****中,而 QMdiArea****会将其作为子窗口处理。

2.关于给窗体设置图标的时候遇到的bug

① [Makefile:84:WPS resource res.o]Error 1

检查icon文件格式,不能直接png等图片改后缀,要用专门的工具进行格式转换

图片转ICO-在线图片格式转换-批量图片格式转换工具

② No rule to make target '../WPS/images/icon.png',needed by'arc_res.cpp'.Stop.

名称不能有中文,可以试试修改路径中的中文,不过我的路径中均为英文,遇到这个错误是因为将images中的png直接转后缀为ico文件后,又上传了qrc中,两个命名重复且已上传到qrc中的png图片已不存在,我将这还原以后就不再报错了,所以这里的图片操作要规范,不能图省事

最后项目就大致是这样子了,做的比较简陋,没有去做界面优化,因为目前还是以能力锻炼为主,并不是要做一个多么优美的app上线给用户用,后续如果有时间再考虑做界面优化,如有更新可在专栏查看

相关推荐
侃侃_天下3 天前
最终的信号类
开发语言·c++·算法
echoarts3 天前
Rayon Rust中的数据并行库入门教程
开发语言·其他·算法·rust
Aomnitrix3 天前
知识管理新范式——cpolar+Wiki.js打造企业级分布式知识库
开发语言·javascript·分布式
每天回答3个问题3 天前
UE5C++编译遇到MSB3073
开发语言·c++·ue5
伍哥的传说3 天前
Vite Plugin PWA – 零配置构建现代渐进式Web应用
开发语言·前端·javascript·web app·pwa·service worker·workbox
小莞尔3 天前
【51单片机】【protues仿真】 基于51单片机八路抢答器系统
c语言·开发语言·单片机·嵌入式硬件·51单片机
我是菜鸟0713号3 天前
Qt 中 OPC UA 通讯实战
开发语言·qt
JCBP_3 天前
QT(4)
开发语言·汇编·c++·qt·算法
Brookty3 天前
【JavaEE】线程安全-内存可见性、指令全排序
java·开发语言·后端·java-ee·线程安全·内存可见性·指令重排序
百锦再3 天前
[特殊字符] Python在CentOS系统执行深度指南
开发语言·python·plotly·django·centos·virtualenv·pygame