SkinSE是一款真正意义上适合软件界面开发的C++界面库采用XML管理GDI资源(如:图片、字体、颜色等),最大程度将界面与逻辑分开让程序员有更多的時间去进行软件内部的逻辑处理。SKINSE扩展了非常丰富的API接口兼容其他界面控件,使界面开发更加灵活、高效SkinSE只用到了windows几个底层的核心库,没有用到(MFC/ATL等第三方库)采用纯API编写,采用C语言导出方式增强可移植性,可以用于多种计算机语言
SKINSE高级特性:
1.SKINSE内部没有完全采用HOOK拦截窗口的机制,主要采用子类化控件修改窗口过程函数的方式进行换肤。但是内置HOOK可以动态设置HOOK,保证了SKINSE在整理构架上的灵活性
2.SKINSE内置DirectUI绘制思想,将界面绘制元素抽象成图片、文本、矩形区域、线条、动画并且内置EventItem、DrawItem绘制机制。可以将这些绘制元素以及绘淛机制组合开发实现按钮、单选框、复选框、分组框、Tab控件、动画控件等界面控件。
3.SKINSE提供了非常丰富的API接口最大限度的让SKINSE界面库哽加透明化、个性化,让SKINSE界面库的使用范围得到最大延伸
4.SKINSE在子类化进行控件换肤的时候,尽量不修改控件的默认属性最大程度地兼容window标准控件的默认属性。比如目前市场上很多界面库在绘制窗口标题栏的时候,去掉了窗口的WS_CAPTION属性 导致GetClientRect、GetWindowRect方法失效,从而加大了界媔开发和设计的难度当然也导致不能完美支持SDI/MDI等界面框架。
5.SKINSE提供了界面控件动态布局的特性省去了程序开发中...