界面显示方法和装置制造方法及图纸

技术编号:12659995 阅读:58 留言:0更新日期:2016-01-06 18:47
本发明专利技术公开了一种界面显示方法和装置,属于计算机技术领域。方法包括:接收界面绘制消息,根据界面绘制消息在后台创建设备上下文缓冲区;在设备上下文缓冲区内绘制界面绘制消息对应的对话框主体及对话框的各个子控件对应的图形元素,得到第一界面;确定第一界面中需要重新绘制的图形元素,将需要重新绘制的图形元素重新绘制在第一界面对应的位置上,得到第二界面;将第二界面映射到前台,并在显示设备上将第二界面显示出来。本发明专利技术通过将绘制在设备上下文缓冲区的同一界面内的对话框及对话框的各个子控件映射到前台进行显示,使得绘制的对话框及对话框的各个子控件显示时不会出现闪烁的现象,因而提高了界面显示效果。

【技术实现步骤摘要】

本专利技术涉及计算机
,特别涉及一种界面显示方法和装置
技术介绍
随着Windows操作系统的广泛应用,Windows客户端程序的开发技术得到了高速的发展,原有的通过输入操作指令获取应用程序中相应功能的操作方式已经不能满足用户的操作需求。为了满足用户的操作需求,简化使用Windows操作系统的操作方式,通常将Windows操作系统中的应用程序的对话框主体及对话框的各个子控件以图形元素的形式在界面中绘制出来,进而将绘制的界面在显示设备上显示出来。由于显示设备上显示的界面的优劣影响着用户获取所需功能的速度,因此,如何显示界面,成为本领域技术人员较为关注的问题。相关技术在显示界面时,首先接收界面绘制消息,然后按时间顺序将接收到的界面绘制消息对应的对话框主体及对话框的各个子控件以不同的图形元素的形式在后台不同的设备上下文中绘制出来;之后将在后台不同的设备上下文中绘制的图形元素按照时间顺序映射到前台,由前台根据映射的图形元素按照时间顺序将对话框主体及对话框的各个子控件重新绘制,并将重新绘制的对话框主体及对话框的各个子控件对应的图形元素在显示设备上显示出来。在实现本专利技术的过程中,专利技术人发现相关技术至少存在以下问题:相关技术在显示界面时,由于按时间顺序将接收到的界面绘制消息对应的对话框主体及对话框的各个子控件以不同的图形元素的形式在后台不同的设备上下文中绘制出来,即对话框主体及对话框的各个子控件在后台的设备上下文中绘制的时间不同,则将后台绘制的对话框主体及对话框的各个子控件的图形元素映射到前台之后,在显示设备上的显示时间也不同,导致图形元素在前台显示时将出现闪烁的现象,因此,相关技术显示的界面效果不佳。
技术实现思路
为了解决相关技术的问题,本专利技术实施例提供了一种界面显示方法和装置。所述技术方案如下:第一方面,提供了一种界面显示方法,所述方法包括:接收界面绘制消息,根据所述界面绘制消息在后台创建设备上下文缓冲区;在所述设备上下文缓冲区内绘制所述界面绘制消息对应的对话框主体及对话框的各个子控件对应的图形元素,得到第一界面;确定所述第一界面中需要重新绘制的图形元素,将所述需要重新绘制的图形元素重新绘制在所述第一界面对应的位置上,得到第二界面;将所述第二界面映射到前台,并在显示设备上将所述第二界面显示出来。结合第一方面,在第一方面的第一种可能的实现方式中,所述在所述设备上下文缓冲区内绘制所述界面绘制消息对应的对话框主体及对话框的各个子控件对应的图形元素之前,还包括:将所述界面绘制消息对应的对话框主体及对话框的子控件封装在一个窗口句柄中;所述在所述设备上下文缓冲区内绘制所述界面绘制消息对应的对话框主体及对话框的各个子控件对应的图形元素,包括:在所述设备上下文缓冲区内绘制封装在一个窗口句柄中的对话框主体及对话框的各个子控件对应的图形元素。结合第一方面,在第一方面的第二种可能的实现方式中,所述确定所述第一界面中需要重新绘制的图形元素,包括:调用API (Applicat1n Programming Interface,应用程序接口)函数中的接口函数获取需要重新绘制的区域,并根据所述需要重新绘制的区域确定所述第一界面中需要重新绘制的图形元素。结合第一方面的第二种可能的实现方式,在第一方面的第三种可能的实现方式中,所述根据所述需要重新绘制的区域确定第一界面中需要重新绘制的图形元素,包括:循环获取每个图形元素的控件句柄,并通过每个图形元素的控件句柄获取每个图形元素在所述第一界面上的位置区域;判断所述需要重新绘制的区域与每个图形元素在所述第一界面上的位置区域是否有交集;若所述需要重新绘制的区域与任一图形元素在所述第一界面上的位置区域有交集,则确定所述任一图形元素为所述第一界面中需要重新绘制的图形元素。结合第一方面,在第一方面的第四种可能的实现方式中,所述将所述需要重新绘制的图形元素重新绘制在所述第一界面对应的位置上,包括:接收API函数中的消息处理函数发送的界面重绘消息,并根据所述界面重绘消息将需要重新绘制的图形元素重新绘制在所述第一界面对应的位置上。第二方面,提供了一种界面显示装置,所述装置包括:接收模块,用于接收界面绘制消息;创建模块,用于根据所述界面绘制消息在后台创建设备上下文缓冲区;第一绘制模块,用于在所述设备上下文缓冲区内绘制所述界面绘制消息对应的对话框主体及对话框的各个子控件对应的图形元素,得到第一界面;确定模块,用于确定所述第一界面中需要重新绘制的图形元素;第二绘制模块,用于将所述需要重新绘制的图形元素重新绘制在所述第一界面对应的位置上,得到第二界面;映射模块,用于将所述第二界面映射到前台;显示模块,用于在显示设备上将所述第二界面显示出来。结合第二方面,在第二方面的第一种可能的实现方式中,所述装置,还包括:封装模块,用于将所述界面绘制消息对应的对话框主体及对话框的子控件封装在一个窗口句柄中;所述第一绘制模块,用于在所述设备上下文缓冲区内绘制封装在一个窗口句柄中的对话框主体及对话框的各个子控件对应的图形元素。结合第二方面,在第二方面的第二种可能的实现方式中,所述确定模块,包括:调用单元,用于调用API函数中的接口函数获取需要重新绘制的区域;确定单元,用于根据所述需要重新绘制的区域确定所述第一界面中需要重新绘制的图形元素。结合第二方面的第二种可能的实现方式,在第二方面的第三种可能的实现方式中,所述确定单元,包括:第一获取子单元,用于循环获取每个图形元素的控件句柄;第二获取子单元,用于通过每个图形元素的控件句柄获取每个图形元素在所述第一界面上的位置区域;判断子单元,用于判断所述需要重新绘制的区域与每个图形元素在所述第一界面上的位置区域是否有交集;确定子单元,用于当所述需要重新绘制的区域与任一图形元素在所述第一界面上的位置区域有交集时,确定所述任一图形元素为所述第一界面中需要重新绘制的图形元素。结合第二方面,在第二方面的第四种可能的实现方式中,所述第二绘制模块,包括:接收单元,用于接收API函数中的消息处理函数发送的界面重绘消息;绘制单元,用于根据所述界面重绘消息将需要重新绘制的图形元素重新绘制在所述第一界面对应的位置上。本专利技术实施例提供的技术方案带来的有益效果是:根据界面绘制消息在后台创建设备上下文缓冲区,并在设备上下文缓冲区内绘制界面绘制消息对应的对话框主体及对话框的各个子控件对应的图形元素,得到第一界面,进而在第一界面中确定需要重新绘制的图形元素之后,将需要重新绘制的图形元素重新绘制在第一界面对应的位置上,得到第二界面,并将第二界面映射到前台,由显示设备将第二界面显示出来。由于对话框主体及对话框的各个子控件被绘制在同一界面上,因而将绘制的对话框主体及对话框的各个子控件映射到前台显示时不会出现闪烁的现象,提高了界面显示效果。【附图说明】为了更清楚地说明本专利技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是本专利技术一个实施例提供的界面显示方法流程图;图2是本专利技术另一个实施例提供的界面显示方法流程图;图3是本专利技术另一个实施例提供的第一本文档来自技高网
...

【技术保护点】
一种界面显示方法,其特征在于,所述方法包括:接收界面绘制消息,根据所述界面绘制消息在后台创建设备上下文缓冲区;在所述设备上下文缓冲区内绘制所述界面绘制消息对应的对话框主体及对话框的各个子控件对应的图形元素,得到第一界面;确定所述第一界面中需要重新绘制的图形元素,将所述需要重新绘制的图形元素重新绘制在所述第一界面对应的位置上,得到第二界面;将所述第二界面映射到前台,并在显示设备上将所述第二界面显示出来。

【技术特征摘要】

【专利技术属性】
技术研发人员:王勇
申请(专利权)人:北京新媒传信科技有限公司
类型:发明
国别省市:北京;11

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

1