UIEASY将陆续推出各种类型的软件Demo,以帮助用户更好的了解DSkinLite所支持的特性,我们将尽可能仿真更多的软件特性,拉近软件Demo和现实软件的距离,也更好的展示DSkinLite的可扩展性和稳定性。
下载类软件主要涉及以下界面特性和控件:
- 界面换底纹换色
Download Demo提供界面换底纹和换色的特性。底纹更换是目前比较流行的一种换肤操作,即更换主界面某部分的图片,同时配合色调的更换,可以配置出不同的赏心悦目的界面。在MSN,QQ等众多的桌面软件中,都有此功能。
如下图所示:
- Edit控件
Download Demo中有两个地方使用了Edit控件,一个是主窗口的搜索编辑控件,另一个地方是登录窗口的用户和密码的输入。这两个地方都是使用我们常用的绘制Edit控件的方式,即将Edit背景图片绘制在父窗口上,Edit控件则是一个没有边框,背景透明的控件。
如上图所示,红线区域为一个没有边框的Edit控件,使用DSkinLite将其透明,则达到上面效果。对应的XML配置文件代码如下:
<window name="SearchEdit" type="edit"> <property bkcolor="#system_bg" btransparentbk="true" /> <editinfo busep_w_picpathbk="true" textcolor="RGB(43,84,116)" font="#default"/> <text id="auto.item" state="non" font="#default" content="Search Movie, Music,Game..." horzalign="left" left="5" bsingleline="true" textcolor="RGB(43,84,116)" /> </window>
其中id=“auto.item”是3.0新版本加入的特性,即用于显示提示性的文本,当编辑框没有
文字输入且获得焦点时,此文本或图片消失。 -
Tab Control
Download Demo中的Tab控件都使用一组Radio Button控件来完成,您可以参考 DSkinLite 使用技巧(一):使用Radio Button做Tab 控件 来了解使用Radio Button制作Tab控件的优点。下图红色区域为两个Radio Button控件:
-
List Control
在Download Demo中,用于显示下载任务状态的List Control控件为整个应用程序中比较重要的控件,其性能与界面表现对整个应用程序有重要影响。List Control控件使用DSkinLite来绘制,DSkinLite V3.0中加入了对List Control,List Box, Tree Control等控件的Item绘制的支持。List 控件的Item绘制与逻辑紧密相连,这也是大多数界面库没有提供Item绘制支持的主要原因。DSkinLite的框架设计比较容易支持Item的绘制,因此我们在V3.0版本中加入了对Item的支持。实际上我们可以看出来一个Item的组成元素跟一个控件的界面组成元素类似,即可以抽象为图片,文本,线条,矩形等元素来组成,同时辅之以事件支持。这样基本上可以支持List Item绘制所需要的所有特性,可以随心所欲的绘制Item。下图所示的List Control控件对应的XML文件为listctrl.xml,对应的标签为“listctrl_downloading”。
- Button&Split Button
- Menu
-
System Menu 可以看到系统按钮位置除了有最小化,关闭按钮外,还有两个按钮,一个是菜单,一个是反馈信息按钮。这种界面设计也是当前比较常见的,即在系统按钮区域放置自定义按钮。DSkinLite很好的支持这种特性,你可以将需要的控件放置在界面顶端的系统按钮区域。


















