UI扩展库设计方案(一)

公司现在基本起步了,项目也接近尾声,但是在项目设计和开发中遇到的问题相当多,做重要的还是界面,MFC界面好用是好用限制太多,一不是一般的难看,对于现在的用户交互来说完全无法达到易用和易看的效果。虽然项目界面是用的FLash来完成的界面,效果也不错,但是Flash的数据交互很不方便,AS语言还在学习中。这两天看到Direct3D中使用的控件效果非常炫,研究了下是用到的DXUT控件库。写了个初步的UI扩展库设计方案。这为初稿以后会进行更改,在开发中我会把方案进行完善,并记下开发过程。

 

产品简介

设计一套Direct3D下基于GPU渲染的2D平面用户交互界面接口,可同时支持多窗口的高效率渲染。
内置支持JavaScript脚本编程,可随意扩充各类型的窗口控件,支持精简图文混排的HTML渲染。

支持多字体大量文本的渲染。支持多种图像格式,包括静态图像文件 PNGJPGTIFTGABMPDDS等, 动态图像文件GIFFlash.SWF)渲染。


实现功能简介:

 
1. 简单的GUI控件库(包括按钮、复选框、单选按钮、单行编辑框、多行编辑框、列表控件、静态文本、滚动条、超链接按钮等)


2.
内置JavaScript/LUA脚本,支持自定义控件 (用那个还没想好,初步估计是LUA,因为跟C++关系好,呵呵)

3.
支持多种图像格式,如:PNGJPGTIFTGABMPDDS


4.
动态图像GIF渲染


5.
支持Flash渲染,并支持内存中Flash文件数据,无需过度文件


6.
动画光标

7.
非规则形状窗口(可透过Alpha层窗口)

 

8. 多窗口管理,支持窗口缩放和层次窗口管理

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

一.            简单的GUI控件库

基于DXUT的控件库, tinyxml来解析配置,根据配置从控件库提取控件,动态生成界面。利用luajavascript做脚本,也可以直接使用DLL文件来做事件处理关联。 最终会是一个类似CEGUI的东西,不过相对简单一点。

1.1.      按钮(Button

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

1.2.      复选框(Check Box

1.3.      单选按钮(Radio Button

单选按钮、复选框 可以利用库提供的选中/非选中纹理,也可以定制纹理。

1.4.      编辑框(Edit Control

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

1.5.      列表控件(List Control

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

1.6.      静态文本(Static Text

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

1.7.      滚动条(Scroll Bar

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

1.8.      组合框(Combo box

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

 

 

 

 

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值