在iPhone下当显示界面从一个界面过渡到另一个界面时,会有一个过渡效果:显示窗口会从右至左缓缓显示出来,这是一个非常好的用户体验,那么在WINCE下如何实现该效果?
实现方法主要用到了“缓存DC”的概念,我们先把两个界面内容合并拷贝到一个内存DC里,然后在另一个界面显示时,依次从左自右将内存DC绘制到屏幕DC,这样就实现了界面的过渡效果。详细介绍请参照norains大侠博客http://blog.csdn.net/norains/archive/2010/06/14/5670538.aspx。在这里一并向norains前辈表示感谢,经常看他的文章,受益匪浅。
以下是具体的实现代码,测试用的WINCE设备的屏幕分辨率为800*480。
基于以上原理,还可以实现界面的从左至右,从上至下以及从下至上的滑动显示。下面的代码实现了界面从屏幕顶端往底端滑动效果。
界面从屏幕顶端往底端滑动显示效果图:
DrawImage实现代码: