当前位置: > 论文中心 > 建筑论文 >

基于LayeredWindow的异形窗体局部刷新

时间:2014-03-07 14:49 点击:
摘要:通过对现存界面库的分析,解释当前异形窗体的创建与刷新的难点,及刷新时CPU占用率高的问题,通过对updateLayeredwindow接口的深度剖析,阐述了利用双界面合成的方法来模拟局部刷新。采用先对局部窗体重绘,然后与原界面合成的方法,大量减小了刷新时

  摘要:通过对现存界面库的分析,解释当前异形窗体的创建与刷新的难点,及刷新时CPU占用率高的问题,通过对updateLayeredwindow接口的深度剖析,阐述了利用双界面合成的方法来模拟局部刷新。采用先对局部窗体重绘,然后与原界面合成的方法,大量减小了刷新时的重绘量,从而大幅度减轻了CPU的占用率。

  关键词:界面异形窗体updateLayeredwindow局部刷新

  中图分类号:TP3011.11文献标识码:A文章编号:1003-9082(2014)02-0001-02

  一、引言

  随着计算机的发展,当今用户对应用软件不再仅仅满足于功能的完善,而且对用户界面友好性、美观性要求越来越高。所以,以往的桌面应用程序开发并不能满足这些界面开发要求,这就致使越来越多的界面库的涌现,而现今的界面库大都基于DirectUI的设计思想[1],但由于原有窗体是规则的,所以根本无法实现异形窗体。随着微软分层窗体的设计思想及UpdateLayeredWindow函数的出现,异形窗体的实现才真正成为可能。但由于UpdateLayeredWindow本身的特性导致每次都必须全部重绘整个程序界面,所以即便是一个像素的改变,都将导致整个窗体的刷新,这对于CPU的占用是非常巨大的,尤其在大型软件中,这将是灾难性的。

  本文在解析分层窗体和UpdateLayeredWindow的基础上,利用双界面合成的方法模拟实现异形界面的局部刷新,彻底解决了异形窗体的刷新问题,为DirectUI实现异形窗体扫除了一大障碍,为界面库的研究提供了新方法,新思路。

  二、异形窗体与局部刷新技术

  1.异形窗体简介

  1.1分层窗体简介

  在创建窗体时,拥有扩展属性WS_EX_LAYERED的窗体就是分层窗体了。通过分层窗体,我们可以实现异形、具有alpha值的窗体,另外还能为窗体实现动作,解决了以往的纯静态窗体的现实。对于分层窗体的绘图机制,可以有两种选择,其一是采用以往的WM_PAINT消息响应机制及局部刷新技术,但这种方法无法实现异形窗体。其二就是使用UpdateLayeredWindow函数,将绘图工作由系统托管,用户只需告诉系统需要绘制哪些图像;

  1.2UpdateLayeredWindow函数简介及现存问题


   论文榜(www.zglwb.com),是一个专门从事期刊推广、投稿辅导的网站。
本站提供如何投稿辅导,寻求投稿辅导代理,快速投稿辅导,投稿辅导格式指导等解决方案:省级投稿辅导/国家级投稿辅导/核心期刊投稿辅导//职称投稿辅导。


栏目列表
联系方式
推荐内容
 
QQ在线咨询
投稿辅导热线:
189-6119-6312
微信号咨询:
18961196312