DXUT为基础的控件库(2)

来源:互联网 发布:淘宝上的棉被 编辑:程序博客网 时间:2024/05/16 08:52

    目前已完成如下控件:    

   1.按钮        

    按钮可以通过提供四个状态的个性化纹理来定制,也可以使用库提供的默认纹理。可以只有图片,这通常用于定制。也可以在图片上叠加文字,多数情况下使用库默认的纹理即可;当然也可以自己提供纹理并指定文字。    

    2.单选按钮、复选框       

    可以利用库提供的选中/非选中纹理,也可以定制纹理。    

    3.编辑框       

    可以自己提供纹理,默认使用库中的纹理。可以指定文字颜色、选中框背景颜色、选中文字颜色等。    

    4.组合框        

    可指定边框颜色和下拉按钮的纹理(四个状态),可指定下拉框高度、滚动条宽度。    

    5.滑块        

    可以指定轨迹、填充层、小拖动块等。    

    6.垂直滚动条        

    不能直接在配置中指定此类型控件,它只是在列表框、组合框、列表控件中被使用。它的纹理可以修改looknfeel文件来指定,可以定制(还没有实现)。    

    7.列表控件        

    支持多列,每列支持文本、图片、简单控件的混合显示。尚未完善。    

    8.超链接风格按钮        

    可指定文本的四个状态的颜色,指定是否显示下划线。    

    9.静态控件        

    支持图片和文字。默认没有背景和边框。    

    10.窗口        

    窗口可以有背景,可以单独提供一张背景纹理,也可以分9部分提供纹理以定制,也可以不要背景,只指定背景颜色。可以有标题栏,也可以没有。    


    待实现的控件:    

    1.多行编辑框        

    分析DXUT的编辑框,修改一下。    

    2.列表框        

    修改DXUT的列表框,应该很快。    

    这些控件完成后,一个基本齐全的控件库就OK了,可以构建复杂界面。    

    下一步的想法是实现窗口嵌套。不过要往后放一放,先来实现用户输入和脚本的关联。准备用lua或javascript。        

    

    有个问题:我大刀阔斧修改DXUTGUI后,帧率只有50左右,哈哈,对D3D不熟,要慢慢查是什么地方导致的。貌似ID3DXSprite的使用有些问题。

原创粉丝点击