基于Qt图形界面软件的操作日志记录方法及系统[发明专利]

(10)申请公布号
(43)申请公布日              (21)申请号 201510629301.5
(22)申请日 2015.09.29
G06F 11/34(2006.01)
(71)申请人中国船舶重工集团公司第七0九研
究所
地址430205 湖北省武汉市东湖新技术开发
区凤凰产业园藏龙北路1号
(72)发明人潘超  鲁爱国  朱博  田华
(74)专利代理机构武汉河山金堂专利事务所
(普通合伙) 42212
代理人
胡清堂
(54)发明名称
基于Qt 图形界面软件的操作日志记录方法
及系统
(57)摘要
本发明公开一种基于Qt 图形界面软件的操
作日志记录方法及系统,通过对用户在Qt 图形界
面上对Qt 控件操作而产生的操作事件进行采集
和处理,首先将Qt 操作事件的类型分为鼠标事件
和键盘事件;然后根据事件的信息分析用户使用
鼠标或使用键盘对Qt 控件的操作,获得Qt 控件
信息并形成鼠标操作日志数据或键盘输入日志数
据;最后将鼠标操作日志数据和键盘输入日志数
据压缩为日志数据包,并将日志数据包进行文件
记录。因此,本发明通过采集和分析用户在操作
Qt 控件时Qt 图形界面所产生的事件信息,获得用
户在操作鼠标或键盘时所处理Qt 控件的名称、类
型、位置等信息,并通过Qt 控件信息得到该控件
实现的具体功能,从而为快速记录软件系统的用
户操作日志提供了途径。(51)Int.Cl.
(19)中华人民共和国国家知识产权局(12)发明专利申请权利要求书2页  说明书7页  附图8页CN 105607985 A 2016.05.25
C N 105607985
A
1.一种基于Qt图形界面软件的操作日志记录方法,其特征在于:所述基于Qt图形界面软件的操作日志记录方法包括如下步骤:
S1、采集用户在Qt图形界面上对Qt控件操作时,界面所产生的Qt操作事件;
S2、根据事件的内容判断Qt事件信息的类型,Qt操作事件的类型分为鼠标事件和键盘事件;
S3、根据鼠标事件分析用户使用鼠标对Qt控件的操作,获得Qt控件信息并形成鼠标操作日志数据;
S4、根据键盘事件分析用户使用键盘对Qt控件输入指令,获得Qt控件信息并形成键盘输入日志数据;
S5、将鼠标操作日志数据和键盘输入日志数据压缩为日志数据包,并将日志数据包进行文件记录。
2.根据权利要求1所述的基于Qt图形界面软件的操作日志记录方法,其特征在于,所述步骤S1包括以下子步骤:
S11、用户开始运行Qt图形界面的软件时,触发计时器计时;
S12、用户在界面上对Qt控件的操作会生成操作事件,在计时超过阈值后,对Qt操作事件信息进行记录监控,并停止计时;Qt操作事件包含Qt事件的操作内容和发起该事件的Qt 控件(即所操作的Qt控件)。
3.根据权利要求1所述的基于Qt图形界面软件的操作日志记录方法,其特征在于,所述步骤S2包括以下子步骤:
S21、从Qt事件中记录三种类型的事件:鼠标点击事件、鼠标释放事件、键盘输入事件;
S22、将鼠标点击事件、鼠标释放事件归类为鼠标事件,将键盘输入事件归类为键盘事件(将事件进行分类的原因是鼠标事件和键盘事件需要采用不同的解析方法来获得日志数据);
S23、按照鼠标事件和键盘事件的划分,对发起鼠标点击事件、鼠标释放事件的Qt控件进行第一类存储,对发起键盘输入事件的Qt控件进行第二类存储。
4.根据权利要求1所述的基于Qt图形界面软件的操作日志记录方法,其特征在于,所述步骤S3包括以下子步骤:
S31、对第一类存储的Qt控件进行解析,如果解析成功,则进入步骤S32;如果解析失败,则进入步骤S33;
S32、获取Qt控件信息,Qt控件信息包括Qt控件的类型、编码名称和Qt控件的执行功能,以及Qt控件所处的界面路径,将获得的Qt控件信息形成鼠标操作日志数据;
S33、获取Qt控件的类型和编码名称,生成鼠标操作异常日志数据。
5.根据权利要求1所述的基于Qt图形界面软件的操作日志记录方法,其特征在于,所述步骤S4包括以下子步骤:
S41、对第二类存储的Qt控件进行解析,如果解析成功,则进入步骤S42;如果解析失败,则进入步骤S45;
S42、获取Qt控件信息,Qt控件信息包括Qt控件的类型、编码名称和Qt控件中存储的输入值,以及Qt控件所处的界面路径;
S43、将发起此次键盘输入事件的Qt控件与发起上一次键盘输入事件的Qt控件进行比
较,判断两次键盘输入是否为对针对同一Qt控件的连续输入;如果是,则不将获得的Qt控件信息形成键盘输入日志数据;如果不是,则进入步骤S44;
S44、将获得的Qt控件信息形成键盘输入日志数据;
S45、获取Qt控件的类型和编码名称,生成键盘输入异常日志数据。
6.根据权利要求1所述的基于Qt图形界面软件的操作日志记录方法,其特征在于,所述步骤S5包括以下子步骤:
S51、将鼠标操作日志数据、鼠标操作异常日志数据、键盘输入日志数据以及键盘输入异常日志数据进行压缩,生成日志数据包;
S52、将日志数据包写入日志缓存区;
S53、当日志缓存区存储的日志数据大小超过阈值时,则将日志缓存区的数据包写入日志文件,并清空日志缓存区。
7.根据权利要求6所述的基于Qt图形界面软件的操作日志记录方法,其特征在于,所述日志数据包中包括鼠标操作日志数据和鼠标操作异常日志数据、或键盘操作日志数据和键盘输入异常日志数据、日志数据大小、计算机系统当前时间、计算机网络地址、操作类型、是否异常数据。
8.根据权利要求4或权利要求5所述的基于Qt图形界面软件的操作日志记录方法,其特征在于,所述Qt控件的界面路径为Qt控件所处在的图形界面的名称。
9.一种基于Qt图形界面的软件操作日志的记录系统,其特征在于,包括以下模块,
事件采集模块,用于捕获和记录用户在界面上对Qt控件操作时界面产生的Qt事件;
事件分类模块,用于根据事件的内容判断Qt事件的类型,Qt操作事件的类型分为鼠标事件和键盘事件;
鼠标日志模块,用于监控用户使用鼠标对Qt控件的操作,获得Qt控件信息并形成鼠标操作日志数据;
键盘日志模块,用于监控用户使用键盘对Qt控件输入指令,获得Qt控件信息并形成键盘输入日志数据;
文件记录模块,用于将鼠标操作日志数据和键盘输入日志数据压缩为日志数据包,并将日志数据包进行文件记录。
基于Qt图形界面软件的操作日志记录方法及系统
技术领域
[0001]本发明涉及一种软件系统的日志记录技术,特别涉及一种基于Qt图形界面软件的操作日志记录方法及系统。
背景技术
[0002]软件操作日志是记录用户在使用软件的过程中,通过鼠标和键盘在操作界面上执行的点击和输入操作,以及执行操作所实现的功能。软件操作日志对于分析软件性能、定位操作异常、以及维护优化功能等具有重要作用。例如,通过记录用户在界面上的操作,可以统计各种界面及其控件的使用频率,为界面显示方式和控件布局的合理设计提供建议;通过记录用户对软件功能的使用,可以知道用户经常使用的功能,对软件的常用功能进行重点优化;特别是,当用户在操作中造成软件系统崩溃时,可以追踪到崩溃来源的具体操作信息。操作日志已成为软件系统日志最重要的组成部分之一。
[0003]目前,大多数成熟的软件系统都具备操作日志记录功能。例如Windows XP系统日志记录了用户安装、更新和删除程序的操作,Oracle数据库记录了用户对数据库表和字段的修改,Linux下的history命令可记录用户在终端下的键盘输入命令。另外一些软件,如Window 7自带的问题步骤记录器、按键精灵软件、键盘鼠标记录大师等,可以通过抓屏的方式记录鼠标键盘的具体操作。
[0004]Qt是一款跨平台的图形界面应用程序框架,它提供了大量成熟的Qt控件,通过事件消息的方式实现控件的人机交互。通过Qt控件的组合,可为软件系统制作出丰富的图形界面,方便用户进行复杂
的软件操作。目前,国内外已经使用Qt开发了多种界面软件系统,由用户在界面上操作各种Qt控件来执行功能。然而,目前软件中针对Qt图形界面的操作日志记录尚不成熟,未出现一种简单的记录方法。
发明内容
[0005]有鉴于此,有必要提供一种仅需要分析Qt控件产生的事件,即可记录用户在Qt图形界面上进行的所有鼠标和键盘操作,并形成详细的操作日志的记录方法。
[0006]一种基于Qt图形界面软件的操作日志记录方法,所述基于Qt图形界面软件的操作日志记录方法包括如下步骤:
[0007]S1、采集用户在界面上对Qt控件操作时,Qt界面所产生的操作事件;
[0008]S2、根据事件的内容判断Qt事件的类型,Qt操作事件的类型分为鼠标事件和键盘事件;
[0009]S3、根据鼠标事件分析用户使用鼠标对Qt控件的操作,获得Qt控件信息并形成鼠标操作日志数据;
[0010]S4、根据键盘事件分析用户使用键盘对Qt控件输入指令,获得Qt控件信息并形成键盘输入日志数据;
[0011]S5、将鼠标操作日志数据和键盘输入日志数据压缩为日志数据包,并将日志数据
包进行文件记录。
[0012]一种基于Qt图形界面的软件操作日志的记录系统,其包括以下模块,
[0013]事件采集模块,用于捕获和记录根据用户在界面上对Qt控件操作时界面所产生的Qt事件;
[0014]事件分类模块,用于根据事件的内容判断Qt事件信息的类型,Qt操作事件的类型分为鼠标事件和键盘事件;
[0015]鼠标日志模块,用于监控用户使用鼠标对Qt控件的操作,获得Qt控件信息并形成鼠标操作日志数据;
[0016]键盘日志模块,用于监控用户使用键盘对Qt控件输入指令,获得Qt控件信息并形成键盘输入日志数据;
[0017]文件记录模块,用于将鼠标操作日志数据和键盘输入日志数据压缩为日志数据包,并将日志数据包进行文件记录。
[0018]本发明所述基于Qt图形界面软件的操作日志记录方法,通过采集和分析用户在操作Qt控件时Qt图形界面所产生的事件,获得用户在操作鼠标或键盘时所处理Qt控件的名称、类型、位置等信息,并通过Qt控件信息得到该控件实现的具体功能,从而为快速记录软件系统的用户操作日志提供了途径。
附图说明
[0019]图1是本发明一较佳实施例的基于Qt图形界面软件的操作日志记录方法流程图;[0020]图2是图1中步骤S1的子流程图;
[0021]图3是图1中步骤S2的一实施子流程图;
[0022]图4是图1中步骤S3的又一实施子流程图;
[0023]图5是图1中步骤S4的子流程图;
[0024]图6是图1中步骤S5的子流程图;
[0025]图7是本发明实施例中基于Qt图形界面软件的操作日志记录方法的工作流程示意图;
[0026]图8是本发明一较佳实施例的基于Qt图形界面软件的操作日志记录系统的结构框图;
[0027]图9是图8中事件产生模块的子结构框图;
[0028]图10是图8中事件分类模块的子结构框图;
[0029]图11是图8中鼠标日志模块的子结构框图;
[0030]图12是图8中键盘日志模块的子结构框图;
[0031]图13是图8中文件记录模块的子结构框图。
具体实施方式
[0032]为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明,应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
[0033]如图1所示,本发明实施例提供一种基于Qt图形界面软件的操作日志记录方法,所

本文发布于:2024-09-21 17:49:03,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/2/413177.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:日志   操作   事件   控件   记录   鼠标
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议