图形用户界面的处理方法、装置、设备和存储介质制造方法及图纸

技术编号:24289598 阅读:17 留言:0更新日期:2020-05-26 20:01
本发明专利技术实施例提供一种图形用户界面的处理方法、装置、设备和存储介质,该方法包括:基于窗口管理链表对图形用户界面上的窗口进行管理,该窗口管理链表存储有窗口的窗口句柄;基于控件管理链表对窗口上的控件的更新进行控制,其中,该控件管理链表存储有窗口上的各个控件的控件句柄,该窗口管理链表还存储有与窗口句柄对应的控件管理链表的链表地址。根据本发明专利技术实施例的技术方案,不仅能够提高GUI上的控件更新速度,而且能够降低GUI占用的内存资源。

GUI processing methods, devices, devices and storage media

【技术实现步骤摘要】
图形用户界面的处理方法、装置、设备和存储介质
本专利技术涉及计算机
,尤其涉及一种图形用户界面的处理方法、装置、设备和存储介质。
技术介绍
随着计算机技术的发展,嵌入式计算机的应用也越来越广泛,如何在嵌入式计算机上处理图形用户界面(GraphicalUserInterface,GUI)成为了关注的焦点。在目前的技术方案中,在嵌入式GUI的处理方案中,一方面,在对窗口上的控件进行更新时,采用的是整个窗口即全屏进行更新的方案,导致控件更新速度较慢;另一方面,为了兼容多个应用环境,对各个应用环境都进行了设计处理,导致GUI处理的代码量较大,占用的内存资源较多。因此,如何提高GUI上的控件更新速度以及降低内存资源占有成为了亟待解决的技术难题。
技术实现思路
本专利技术实施例提供一种图形用户界面的处理方法、装置、设备和存储介质,用于解决现有GUI处理方案中控件更新速度较慢以及占有的内存资源较多的问题。本专利技术实施例第一方面,提供了一种图形用户界面的处理方法,包括:基于窗口管理链表对所述图形用户界面上的窗口进行管理,所述窗口管理链表存储有所述窗口的窗口句柄;基于控件管理链表对所述窗口上的控件的更新进行控制,其中,所述控件管理链表存储有所述窗口上的各个控件的控件句柄,所述窗口管理链表还存储有与所述窗口句柄对应的控件管理链表的链表地址。在本专利技术的一些实施例中,基于上述方案,所述基于窗口管理链表对所述图形用户界面上的窗口进行管理,包括:响应于接收到的创建新窗口的窗口创建指令,创建所述新窗口;将所述新窗口的窗口句柄保存到所述窗口管理链表的新节点上。在本专利技术的一些实施例中,基于上述方案,所述方法还包括:响应于所述新窗口上的创建新控件的控件创建指令,创建所述新控件;将所述新控件的控件句柄保存到所述控件管理链表上;将所述控件管理链表的地址存储到所述窗口管理链表的所述新节点上。在本专利技术的一些实施例中,基于上述方案,所述基于窗口管理链表对所述图形用户界面上的窗口进行管理,包括:接收将所述图形用户界面上的下一窗口切换为当前活跃窗口的窗口切换指令;响应于所述窗口切换指令,将所述当前活跃窗口的窗口句柄对应的控件管理链表里各个控件的控件区域填充为背景色;获取所述下一窗口的窗口句柄对应的控件管理链表的链表地址;基于所述链表地址对应的控件管理链表重新绘制所述下一窗口上的各个控件。在本专利技术的一些实施例中,基于上述方案,所述基于窗口管理链表对所述图形用户界面上的窗口进行管理,包括:接收对所述图形用户界面上的目标窗口的删除指令;响应于所述删除指令,确定与所述目标窗口对应的第一控件管理链表和/或与所述目标窗口的子窗口对应的第二控件管理链表;删除所述窗口管理链表中所述目标窗口的节点与所述第一控件管理链表、和/或所述目标窗口的子窗口的节点与所述第二控件管理链表。在本专利技术的一些实施例中,基于上述方案,所述窗口管理链表还包括窗口计时器,所述基于窗口管理链表对所述图形用户界面上的窗口进行管理,包括:基于所述窗口计时器对所述图形用户界面上的当前活跃窗口的窗口事件进行定时回调。在本专利技术的一些实施例中,基于上述方案,所述窗口管理链表包含窗口活跃标志,所述基于窗口管理链表对所述图形用户界面上的窗口进行管理,包括:若所述图形用户界面上的窗口的窗口状态发生改变,则更新所述窗口的窗口状态标志,其中,所述窗口状态包括激活状态以及睡眠状态。在本专利技术的一些实施例中,基于上述方案,所述窗口为当前活跃窗口,所述基于控件管理链表对所述窗口上的控件的更新进行控制,包括:接收对所述当前活跃窗口上的目标控件的更新指令;响应于所述更新指令,基于所述窗口管理链表确定所述当前活跃窗口的窗口句柄;从所述窗口句柄对应的控件管理链表中确定所述目标控件的控件句柄;基于所述控件句柄通过控件回调绘制函数对所述目标控件进行更新。在本专利技术的一些实施例中,基于上述方案,所述从所述窗口句柄对应的控件管理链表中确定所述目标控件的控件句柄,包括:确定与所述窗口句柄对应的控件管理链表;确定所述目标控件在所述控件管理链表中的节点序号;基于所述节点循环从所述控件管理链表中确定所述目标控件的控件句柄。在本专利技术的一些实施例中,基于上述方案,所述控件管理链表还包含控件回调绘制函数的地址,所述基于所述控件句柄通过控件回调绘制函数对所述目标控件进行更新,包括:基于所述控件句柄获取对应的控件回调绘制函数的函数地址;基于所述函数地址调用所述控件回调绘制函数对所述目标控件进行更新。在本专利技术的一些实施例中,基于上述方案,所述控件管理链表还包含控件定时器,所述基于控件管理链表对所述窗口上的控件的更新进行控制,包括:基于所述控件定时器定时对所述窗口上的所述控件进行更新。在本专利技术的一些实施例中,基于上述方案,所述处理方法还包括:接收对所述图形用户界面的当前活跃窗口上的目标控件的回调绘制指令;响应于所述回调绘制指令,通过图形绘制接口对所述目标控件进行绘制。在本专利技术的一些实施例中,基于上述方案,所述通过图形绘制接口对所述目标控件进行绘制,包括:通过所述图形绘制接口调用屏幕绘制接口,通过所述屏幕绘制接口在目标屏幕上进行图形绘制。在本专利技术的一些实施例中,基于上述方案,所述处理方法应用于FreeRTOS平台上。本专利技术实施例的第二方面,提供了一种图形用户界面的处理装置,包括:窗口管理模块,用于基于窗口管理链表对所述图形用户界面上的窗口进行管理,所述窗口管理链表存储有所述窗口的窗口句柄;控件管理模块,用于基于控件管理链表对所述窗口上的控件的更新进行控制,其中,所述控件管理链表存储有所述窗口上的各个控件的控件句柄,所述窗口管理链表还存储有与所述窗口句柄对应的控件管理链表的链表地址。在本专利技术的一些实施例中,基于上述方案,所述窗口管理模块包括:窗口创建单元,用于响应于接收到的创建新窗口的窗口创建指令,创建所述新窗口;窗口句柄存储单元,用于将所述新窗口的窗口句柄保存到所述窗口管理链表的所述新节点上。在本专利技术的一些实施例中,基于上述方案,所述控件管理模块还包括:控件创建单元,用于响应于所述新窗口上的创建新控件的控件创建指令,创建所述新控件;控件句柄保存单元,用于将所述新控件的控件句柄保存到所述控件管理链表上;链表地址存储单元,用于将所述控件管理链表的地址存储到所述窗口管理链表的新节点上。在本专利技术的一些实施例中,基于上述方案,所述窗口管理模块还包括:切换指令接收单元,用于接收将所述图形用户界面上的下一窗口切换为当前活跃窗口的窗口切换指令;背景填充单元,用于响应于所述窗口切换指令,将所述当前活跃窗口的窗口句柄对应的控件管理链表里各个控件的控件区域填充为背景色;链表地址获取单元,用于获取所述下一窗口的窗口句柄对应的控件管理链表的链表地址;控件重绘单元,用于基于所述链表地址对应的控件管理链表重新绘制所述下一窗口上的各个控件。在本专利技术的一些实施例中,基于上述方案,所述窗口管理模块包括:删除指令接收单元,用于对所述图形用户界面上的目标窗口的删除指令;控本文档来自技高网...

【技术保护点】
1.一种图形用户界面的处理方法,其特征在于,包括:/n基于窗口管理链表对所述图形用户界面上的窗口进行管理,所述窗口管理链表存储有所述窗口的窗口句柄;/n基于控件管理链表对所述窗口上的控件的更新进行控制,其中,所述控件管理链表存储有所述窗口上的各个控件的控件句柄,所述窗口管理链表还存储有与所述窗口句柄对应的控件管理链表的链表地址。/n

【技术特征摘要】
1.一种图形用户界面的处理方法,其特征在于,包括:
基于窗口管理链表对所述图形用户界面上的窗口进行管理,所述窗口管理链表存储有所述窗口的窗口句柄;
基于控件管理链表对所述窗口上的控件的更新进行控制,其中,所述控件管理链表存储有所述窗口上的各个控件的控件句柄,所述窗口管理链表还存储有与所述窗口句柄对应的控件管理链表的链表地址。


2.根据权利要求1所述的处理方法,其特征在于,所述基于窗口管理链表对所述图形用户界面上的窗口进行管理,包括:
响应于接收到的创建新窗口的窗口创建指令,创建所述新窗口;
将所述新窗口的窗口句柄保存到所述窗口管理链表的新节点上。


3.根据权利要求2所述的处理方法,其特征在于,所述方法还包括:
响应于所述新窗口上的创建新控件的控件创建指令,创建所述新控件;
将所述新控件的控件句柄保存到所述控件管理链表上;
将所述控件管理链表的地址存储到所述窗口管理链表的所述新节点上。


4.根据权利要求1所述的处理方法,其特征在于,所述基于窗口管理链表对所述图形用户界面上的窗口进行管理,包括:
接收将所述图形用户界面上的下一窗口切换为当前活跃窗口的窗口切换指令;
响应于所述窗口切换指令,将所述当前活跃窗口的窗口句柄对应的控件管理链表里各个控件的控件区域填充为背景色;
获取所述下一窗口的窗口句柄对应的控件管理链表的链表地址;
基于所述链表地址对应的控件管理链表重新绘制所述下一窗口上的各个控件。


5.根据权利要求1所述的处理方法,其特征在于,所述基于窗口管理链表对所述图形用户界面上的窗口进行管理,包括:
接收对所述图形用户界面上的目标窗口的删除指令;
响应于所述删除指令,确定与所述目标窗口对应的第一控件管理链表和/或与所述目标窗口的子窗口对应的第二控件管理链表;
删除所述窗口管理链表中所述目标窗口的节点与所述第一控件管理链表、和/或所述目标窗口的子窗口的节点与所述第二控件管理链表。


6.根据权利要求1所述的处理方法,其特征在于,所述窗口管理链表还包括窗口计时器,所述基于窗口管理链表对所述图形用户界面上的窗口进行管理,包括:
基于所述窗口计时器对所述图形用户界面上的当前活跃窗口的窗口事件进行定时回调。


7.根据权利要求1所述的处理方法,其特征在于,所述窗口管理链表还包含窗口活跃标志,所述基于窗口管理链表对所述图形用户界面上的窗口进行管理,包括:
若所述图形用户界面上的窗口的窗口状态发生改变,则更新所述窗口的窗口状态标志,其中,所述窗口状态包括激活状态以及睡眠状态。


8.根据权利要求1所述的处理方法,其特征在于,所述窗口为当前活跃窗口,所述基于控件管理链表对所述窗口上的控件的更新进行控制,包括:
接收对所述当前活跃窗口上的...

【专利技术属性】
技术研发人员:李绪青
申请(专利权)人:深圳移航通信技术有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1