##序言
#### **首先,欢迎您使用 Ex_DirectUI 4.0 界面引擎,您的支持是对我们最大的鼓励!**
* * * * *
### 关于ExDirectUI
ExDirectUI引擎是一款采用DirectUI概念,基于GDI/Direct2D绘图引擎的轻量级用户界面引擎。它相对其他轻量级UI引擎具有高效、安全、绚丽、扩展性强、可跨语言等特点。
使用本引擎提供的布局文件和主题文件机制,可以快速高效的设计和实现界面的布局,大大提高软件开发的效率。
* * * * *
### ExDirectUI 4.0 的优势和特点
1. 不依赖于大量底层API, 使得可以更灵活的使用更优秀的底层接口,如绘制引擎可以采用 GDI/GDI+ 也可采用 Direct2D 等新技术。
2. 使用界面布局文件,使得界面的布局可与业务逻辑分离,在某些情况下,界面布局的修改甚至可以不用重新编译、更新整个程序。
3. 使用主题文件,使界面的外观可以轻松更换,并且可以将该部分交由UI设计师设计,减轻了程序开发人员的工作负担。
4. 支持多种图片格式,相比WinAPI窗口程序最重要的特性就是支持Alpha混合,为支持Alpha通道,ExDirectUI在支持BMP、JPG等基础图像格式外,支持了带透明通道的PNG格式。
5. 采用高效的界面逻辑,使界面绘制的效率很高,支持父子关系、相对坐标、坐标锁定、光标穿透等控件特性。
6. 使用了大量优美高效的动画缓动效果,方便开发人员轻松地制作出各种优秀的用户交互效果。
7. 所有接口采用 Unicode 编码,只要满足Windows标准,任何国家任何语言的计算机都可以正常运行。
8. 采用句柄作为界面元素标识,ExDirectUI 4.0 界面库文件提供核心API用于操作界面元素,所有界面元素均采用句柄作为标识,这样做可以方便开发人员的二次封装和跨语言使用。
* * * * *
### 版权声明
未经版权所有者明确授权,禁止发行本文档及其被实质上修改的版本。
未经版权所有者事先授权,禁止将此作品及其衍生作品以标准(纸质)书籍形式发行。
如果有兴趣再发行或再版本手册的全部或部分内容,不论修改过与否,或者有任何问题,请联系版权所有者(yhan@qq.com)。
* * * * *
- 序言
- 基础
- 概念
- 术语
- 相关技术
- 入门
- 如何获取
- 环境需求
- 使用条件
- 开发规范
- 文件结构
- 让我们开始吧
- 全局命令
- 引擎命令
- Ex_Init
- Ex_UnInit
- Ex_XMLRegisterValueCallback
- Ex_XMLRegisterCallback
- Ex_GetLong
- 辅助命令
- Ex_SleepEx
- Ex_GetHash
- Ex_Atom
- 窗口命令
- 窗口相关
- Ex_WndRegisterClass
- Ex_WndCreate
- Ex_WndMsgLoop
- 皮肤相关
- Ex_DUIBindWindow
- Ex_DUICreateFromLayout
- Ex_DUILoadLayout
- Ex_DUIHandEvent
- Ex_DUIShowWindow
- Ex_DUIShowWindowEx
- Ex_DUIGetBkgColor
- Ex_DUISetBkgColor
- Ex_DUISetBkgImage
- Ex_DUIGetAlpha
- Ex_DUISetAlpha
- Ex_DUIGetSysCtl
- Ex_DUIGetObjFromID
- Ex_DUIGetClientRect
- Ex_DUIInvalidateRect
- Ex_DUIObjFromWindowPoint
- Ex_DUIObjFromScreenPoint
- Ex_DUIAddTrayIcon
- Ex_DUIPopupTrayIcon
- Ex_DUIPopupTipsEx
- Ex_DUIDeleteTrayIcon
- 关于布局文件
- 控件命令
- 控件基类
- 关于布局文件
- Ex_ObjCreate
- Ex_ObjCreateEx
- Ex_ObjDestroy
- Ex_ObjGetLong
- Ex_ObjSetLong
- Ex_ObjDispatchMessage
- Ex_ObjSendMessage
- Ex_ObjPostMessage
- Ex_ObjCallProc
- Ex_ObjDefProc
- Ex_ObjDispatchOwnerMessage
- Ex_ObjUpdate
- Ex_ObjInvalidateRect
- Ex_ObjBeginPaint
- Ex_ObjEndPaint
- Ex_ObjGethWnd
- Ex_ObjGethExDui
- Ex_ObjGethTheme
- Ex_ObjGetParent
- Ex_ObjSetParent
- Ex_ObjRegister
- Ex_ObjGetText
- Ex_ObjSetText
- Ex_ObjGetBkColor
- Ex_ObjSetBkColor
- Ex_ObjGetBkImageInfo
- Ex_ObjSetBkImageInfo
- Ex_ObjGetBkMode
- Ex_ObjSetBkMode
- Ex_ObjGetTextColor
- Ex_ObjSetTextColor
- Ex_ObjGetBorderColor
- Ex_ObjSetBorderColor
- Ex_ObjGetAlpha
- Ex_ObjSetAlpha
- Ex_ObjSetFont
- Ex_ObjSetRedraw
- Ex_ObjValidate
- Ex_ObjSetTimer
- Ex_ObjKillTimer
- Ex_ObjEnableScrollBar
- Ex_ObjGetScrollBar
- Ex_ObjGetScrollPos
- Ex_ObjSetScrollPos
- Ex_ObjGetScrollRange
- Ex_ObjSetScrollRange
- Ex_ObjGetTrackPos
- Ex_ObjGetScrollInfo
- Ex_ObjSetScrollInfo
- Ex_ObjGetClassNameA
- Ex_ObjGetClassNameW
- Ex_ObjGetRect
- Ex_ObjClientToWindow
- Ex_ObjMove
- Ex_ObjLockPos
- Ex_ObjIsVisible
- Ex_ObjShow
- Ex_ObjEnable
- Ex_ObjGetAnimationInfo
- Ex_ObjSetAnimationInfo
- Ex_ObjBeginAnimation
- Ex_ObjHandEvent
- Ex_ObjHandEventFromID
- 控件消息
- 介绍
- 属性分发
- 设置提示文本
- 获取提示文本
- 组件状态被改变
- 计算尺寸
- 获取Tab焦点区域矩形
- 绘制背景
- 绘制非客户区
- 绘制主题数据
- 系统控件
- 标题栏
- 图标控件
- 系统按钮
- 菜单
- 基础控件
- 标签
- 按钮
- 普通按钮
- 图形按钮
- 组图按钮
- 下拉按钮
- 图片框
- 链接框
- 选择框
- 三态选择框
- 单选框
- 分组框
- 进度条
- 滚动条
- 编辑框
- 丰富文本框
- 高级控件
- 组合框
- 列表框
- 选择夹
- 浏览框
- 扩展控件
- 绘图命令
- 关于绘图引擎
- 设备上下文
- 画布
- _excanvas_getlasterror
- _excanvas_setlasterror
- _excanvas_getlong
- _canvas_create
- _canvas_destroy
- _canvas_validate
- _canvas_beginpaint
- _canvas_endpaint
- _canvas_clear
- _canvas_drawimage
- _canvas_drawimagerect
- _canvas_drawimagerectrect
- _canvas_drawline
- _canvas_drawlinefrompen
- _canvas_drawimagefromdrawdata
- _canvas_drawimagegird
- _canvas_drawrectangle
- _canvas_fillrectangle
- _canvas_fillrectanglefrombrush
- _canvas_getdc
- _canvas_width
- _canvas_height
- _canvas_setbkmode
- _canvas_getbkmode
- _canvas_bitblt
- _canvas_bitblt_dc
- _canvas_alphablt
- _canvas_alphablt_dc
- _canvas_cliprect
- _canvas_cliphrgn
- _canvas_resetclip
- _canvas_savetofile
- _canvas_resize
- _canvas_drawrectanglefrompen
- _canvas_setfont
- _canvas_getfont
- _canvas_getlogfont
- _canvas_getpixel
- _canvas_calctextsize
- _canvas_drawtext
- _canvas_savetomemory
- _canvas_blur
- 图像
- _image_width
- _image_height
- _image_createfromfile
- _image_destory
- _image_createfromstream
- _image_selectactiveframe
- _image_getframecount
- _image_copy
- _image_copyrect
- _image_createfrommemory
- _image_savetofile
- _image_getframedelay
- _image_createfromhicon
- _image_create
- _image_savetomemory
- _image_lockbits
- _image_createfromhres
- 画笔
- _pen_create
- _pen_destory
- _pen_create_frombrush
- 画刷
- _brush_create
- _brush_destroy
- _brush_createfromimage
- _brush_create_lineargradientfrompoint
- 字体
- _font_createfromfamily
- _font_create
- _font_destroy
- _font_getlogfont
- _font_createfromlogfont
- 路径
- 区域
- 文本格式
- 效果
- 布局文件
- 关于XML
- 文件结构
- 特殊语法
- 主题文件
- 关于EXT
- 文件结构
- 贴图文件
- 描述文件
- 制作主题
- 相关命令
- Ex_ThemeLoad
- Ex_ThemeFree
- Ex_ThemepData
- Ex_ThemeGetData
- Ex_ThemeGetColor
- Ex_ThemeGetRect
- Ex_ThemeDraw
- Ex_ThemeDrawEx
- Ex_ThemeDispatchDrawEx
- 缓动特效
- 关于特效
- 缓动种类
- 相关命令
- 授权机制