SOUI是什么

SOUI 是什么?SOUI 是启程软件开发的一个 C++ Direct UI 库。DirectUI 技术一般是指将所有的界面控件都绘制在一个窗口上,这些控件的逻辑和绘图方式都必须自己进行编写和封装,而不是使用 Windows 控件,所以这些控件都是无句柄的。虽然 Direct UI 不是什么新技术,但是要把 UI 做好,Direct UI 确实是目前为止最有效的解决方案。

DirectUI 技术需要解决的主要问题如下:

◆ 窗口的子类化,截获窗口的消息。

◆ 封装自己的控件,并将自己的控件绘制到该窗口上。

◆ 封装窗口的消息,并分发到自己的控件上,让自己的控件根据消息进行响应和绘制。

◆ 根据不同的行为发送自定义消息给窗口,以便程序进行调用。

◆ 一般窗口上控件的组织使用 XML 来描述。

通常 DirectUI 的界面库都采用 XML 配置文件+图片+控制脚本(Lua、Javascript 等)的开发方式,非常类似于 Web 程序的开发方式,当然这里面控制脚本也可以直接使用 C++ 代码来实现。这种开发方式可以大大提高开发效率,将程序员从繁琐的界面工作中解脱出来,并且通过美工的设计,可以使界面更美观。 SOUI 不是一个新项目,它是基于之前开发的 DuiEngine 界面库,再经过为期近半年的重构后完成的版本,除了 skia 渲染模块还有待进一步完善外,其它模块已经基本达到发布标准。(DuiEngine 是一个基于金山 Bkwin 重构的 UI 库,经过不断更新,已经相对稳定,并且已经在多个有大量用户的客户端产品中使用)

最后更新于

这有帮助吗?