微软的Office Word软件是一款通用的文字处理软件, 其功能非常强大, 但它是如何实现的呢? 本文怀着这样的想法, 用Qt开发出与之功能类似的文字处理软件.(当然了, 我只实现了一些基本功能, 读者们可根据本文的思路,对该软件的功能进行扩展), 请先看软件运行结果:

(注: 在Linux运行Qt程序时, 只有将界面最大化, 才能在左上角看见菜单.)

实现该软件的核心点:

1. QMdiArea 类: 它是实现多文档操作的关键类, 通过向QMdiArea中添加子窗口,可操作多个子窗口(其中只有一个子窗体处于激活状态, 可通过activeSubWindow()获取), 设置激活的子窗体可通过它的setActiveSubWindow()成员函数, 它的主要信号函数是subWindowActivated(QMdiSubWindow *);

2. 菜单和工具栏: 建立若干个QAction对象, 设置它们的文本、图片、快捷键和提示信息等信息, 建立响应单击事件的槽函数;

3. 工具栏中的段落使用了QActionGroup类, 它可将菜单动作QAction分组,  同一组中的子菜单项属于同一个动作组,  在某一时刻,  所有的这些QAction只有一个被激活,  即它们的激活是互斥的.

4. 字体格式的设置可通过QTextEdit对象的void mergeCurrentCharFormat(const QTextCharFormat &modifier)来完成, 通过QTextCharFormat和QTextFormat对象可以玩出很多花样, 如字体删除线、字体间隙、表格、图片等. 文本游标(QTextCursor)是用于通过编程接口访问和修改文本文档的内容和底层结构的对象,它模仿文本编辑器中游标的行为,QTextCursor包含有关光标在QTextDocument中的位置及其所做任何选择的信息, 它可通过QTextEdit::textCursor()获取.

由于代码量较大,本文就不列出源代码了,源码可在以下路径下载:

https://download.csdn.net/download/ouyangxiaozi/21506881

Qt 版Word多文档编辑与处理(完整版)相关推荐

  1. 放大和收缩 mac版word 的文档显示比例

    有两种方法可以放大和收缩 mac版word 的文档显示比例大小: 方法一:使用快捷键 两个手指放到touchpad上面,同时按住control键,上下移动两个手指,就会收缩和放大word文档内容的显示 ...

  2. 苹果手机怎么编辑word文档_Word文档编辑转换安卓版下载_Word文档编辑转换app下载...

    Word文档编辑转换app是一款非常具有实际意义的文档模板类型转换工具,众多强大功能提供Word编辑,支持在线管理文档,随时随地的高效办公,让你的工作更加的具有效率,还有许多有趣实用的功能等你来体验, ...

  3. word长篇文档编辑技巧

    以下内容是应某杂志编辑要求所写.主要是word长篇文档的编辑技巧. 可以利用在论文.计划.总结等方面. 一.版面规划: 当我们要作一篇毕业设计时,要先对版面进行规划,比如页边距留多少,在上面装订还是在 ...

  4. SpringBoot集成onlyoffice实现word文档编辑保存 [ 转载 ]

    原文地址 说明 onlyoffice为一款开源的office在线编辑组件,提供word/excel/ppt编辑保存操作 以下操作均基于centos8系统,officeonly镜像版本7.1.2.23( ...

  5. QT5 界面截图保存到本地+输出PDF/WORD格式文档+QT界面中文乱码及输出PDF中文乱码的解决(亲身实践并且成功)

    最近做了一个和QT5有关的项目,遇到很多问题也学习到不少,特意写下来希望帮到更多的人.(我的版本VS2017+QT5.12.0) 一.QT5截图并保存到本地 在头文件添加必须项 #include &l ...

  6. css html 高仿word 格式,制作的可编辑的微软Word样式文档 HTML-Sheets-of-Paper

    这是一款使用HTML和CSS3制作的可编辑的微软Word样式文档.该特效提供一组预定义的样式,用于在WEB页面中生成各种尺寸的Word样式的文档效果.它提供的样式包括: sheets-of-paper ...

  7. word文档编辑受限制怎么解除?

    在使用word文档的时候,为了避免内容被无修改而设置编辑保护,但是想要修改的时候发现word文档编辑受限了,那么怎么解除呢,其实关闭保护功能即可.下面一起来看看操作方法吧! word文档编辑受限怎么解 ...

  8. 自己用js做的在线word文档编辑器oarword-doc/docx文档编辑、导出导出

    分享自己用js做的在线word文档编辑器oarword 支持基本doc/docx文档编辑,导出和导出,类似google docs和zoho 源码分享在Github:https://github.com ...

  9. 用计算机如何编辑文档,怎么使用手机word文档编辑

    当电脑不在身边的时候,如何在手机上编辑word文档呢?下面就由学习啦小编来告诉你怎么使用手机word文档编辑,希望对你有帮助! 怎样在手机上编辑word文档 先下载wps office 的软件,如下图 ...

最新文章

  1. STM32F103C8开发板原理图和管脚图
  2. 电子学会青少年编程等级考试Python案例10
  3. Loadrunner日志设置与查看
  4. 美参议员敦促SEC就雅虎黑客案信息披露义务展开调查
  5. python 时间减去一天_Python是个什么鬼?为什么985学生都在学它?!
  6. MaxCompute 图计算开发指南
  7. POS消费机C#例子代码
  8. Tomcat中实现websocket和browser端访问
  9. flatmap_flatMap()与concatMap()与concatMapEager()– RxJava常见问题解答
  10. LeetCode 63. 不同路径 II(DP)
  11. Yii 1.0 伪静态即Yii配置Url重写(转)
  12. HTML5教程:1.1 迎接新的Web时代
  13. Ubuntu18.04 安装OpenCV
  14. kali linux中文版安装
  15. Spring Boot电商项目54:订单模块三:【前台:订单详情】接口;
  16. 春节后第一周个人新闻两则
  17. 声明$(function(){})的含义
  18. 一些我们关于端到端语音翻译的思考和尝试
  19. 单片机实例6——报警产生器(硬件电路图+汇编程序+C语言程序)
  20. 实时控制软件开发第二次作业总结

热门文章

  1. 基于搜狗微信的爬虫知识总结
  2. 运用JAVA开发安卓程序
  3. 阿里入股新浪微博:动机与前景分析
  4. Keystone安装配置
  5. 年仅21岁,干掉6位诺贝尔奖得主,被誉为科学界最强杀手,却惨被人骂成一个笑话...
  6. 【Android】打包生成APK教程
  7. 贝叶斯估计及其派生估计准则(极大似然、最大后验证、最小均方)
  8. 用数据说话,看中国49个地方(省、市、高新区)集成电路产业实力情况
  9. PCB拼板邮票孔制作规范!
  10. Markdown小技巧:代码格式、缩进和字体大小