dskinlite_downloadDemo
     点击下载示例程序

      UIEASY将陆续推出各种类型的软件Demo,以帮助用户更好的了解DSkinLite所支持的特性,我们将尽可能仿真更多的软件特性,拉近软件Demo和现实软件的距离,也更好的展示DSkinLite的可扩展性和稳定性。 
    

      下载类软件主要涉及以下界面特性和控件:
  • 界面换底纹换色
    Download Demo提供界面换底纹和换色的特性。底纹更换是目前比较流行的一种换肤操作,即更换主界面某部分的图片,同时配合色调的更换,可以配置出不同的赏心悦目的界面。在MSN,QQ等众多的桌面软件中,都有此功能。
    如下图所示: 

    color_changed

  • Edit控件
    Download Demo中有两个地方使用了Edit控件,一个是主窗口的搜索编辑控件,另一个地方是登录窗口的用户和密码的输入。这两个地方都是使用我们常用的绘制Edit控件的方式,即将Edit背景图片绘制在父窗口上,Edit控件则是一个没有边框,背景透明的控件。

    editbk 

    如上图所示,红线区域为一个没有边框的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控件: 

    tabcontrol
  • 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”。  

    listctrl

  • Button&Split Button
    Button控件是此Demo使用比较多的控件,也是大多数软件使用的较多的控件。使用DSkinLite可以轻松制作各种风格的Button控件。如软件底部的工具栏的按钮皆由Button控件构成,如下图所示:

    button
    其中第一个New控件为DSkinLite所支持的SplitButton,即有左右两个可以响应事件的区域,这种类型的控件在目前的界面设计中经常会用到。上面的Button都有transparent特性,即在normal状态下,背景是透明的。
  • Menu
        Demo有多个地方使用了Menu,如Tab Control中的排序菜单,List Control中的右键设置菜单,已经系统托盘图片的右键菜单等。通过此示例,可以了解DSkinLite对Menu的支持,DSkinLite支持Menu的所有特性,如设置Icon,添加快捷键文本等。下图为List control右键点击触发的菜单。

    Menu
  • System Menu           可以看到系统按钮位置除了有最小化,关闭按钮外,还有两个按钮,一个是菜单,一个是反馈信息按钮。这种界面设计也是当前比较常见的,即在系统按钮区域放置自定义按钮。DSkinLite很好的支持这种特性,你可以将需要的控件放置在界面顶端的系统按钮区域。
         
           综上所述,Download Demo包含了在界面开发中遇到的大部分控件及其他特性。如果您的应用软件跟此Demo类似,可以考虑使用DSkinLite来完成界面相关工作。