路飞 发表于 2012-6-13 15:37:07

酷炫界面引擎(KXUI)易语言皮肤源码 - 全新框架逻辑[ DUI DirectUI 自绘 皮肤]

酷炫界面引擎(KXUI)易语言皮肤源码 - 全新框架逻辑[ DUI DirectUI 自绘 皮肤]
酷炫界面引擎(KXUI)

前言:
白天去公司上班,晚上回家一有时间就打开电脑写DirectUI,在不自不觉中已经写了N个版本的DirectUI.
框架逻辑是DirectUI最核心的部分,它完全影响UI的效率和效果等...
这次发的DirectUI框架逻辑和以往的有大大的改进,个人感觉已经接近其它"真实DirectUI"了.
我一步一步按思路和经验重写了这个DirectUI,但写完后发出它的执行效率和占用资源并未达到我要求.
所以我决定放弃这个DirectUI,也许我太追求完美了(我还会继续重写DirectUI,我想肯定更加好)....
现在开源给大家:学习.参考.交流.改进.二开等等..

引用参考:
GDI+ - GDIPlus(kyozy)
类中调用 - 东灿屠版_易语言类方法回调
在此备注特别感谢你们为易友做出个贡献....

框架逻辑:
1.碰撞元素:
循环判断在目标元素上层有没有矩形碰撞并且可视的元素
2.隐藏上层:
把碰撞可视的元素隐藏了(就是只画出背景位图,参考绘画元素)
这样就把目标元素上层需要画的元素隐藏了
3.计算显示:
计算目标元素在父级元素的位置和所显示的矩形
也可是在窗口的实际坐标和与父级元素矩形交集的矩形区域(超出父级元素矩形是不显示的)
4.背景位图
每个元素在绘画前把该元素所占的矩形区域图片备份(复制)保存“背景位图”。
这是为了实现元素的隐藏或移动等等,且绘画时不影响该元素下层的元素(带透明通道)。
5.绘画元素:
画出目标元素的背景位图,画出实际显示部分的元素
循环判断该目标下是否有子元素,如果有也“绘画元素”
6.显示上层:
把刚刚隐藏上层元素显示出来,并更新“背景位图”和画出上层元素
**** Hidden Message *****

357307456 发表于 2012-8-11 00:45:19

回复 1# 路飞


    究极模块Ver 4.0.4 究极模块Ver 4.0.4 究极模块Ver 4.0.4 究极模块Ver 4.0.4

633600 发表于 2012-8-12 11:07:35

1+LKtQAIEACnBgIAkCw2Cu3cBgc4mIr0fOFbmg==

1aa82e 发表于 2012-8-12 11:22:23

看看下:lol

caven520 发表于 2012-11-6 12:14:32

好东西 先谢了

jiyaxi2003 发表于 2013-6-11 14:31:02

使用GDIPLUS实现

m18365945970 发表于 2013-6-11 15:41:25
























































































































































































zasxdf715 发表于 2013-6-11 18:11:43

看看下..

q191555980 发表于 2013-6-13 11:03:05

钱钱钱钱钱钱钱钱钱钱钱钱钱钱钱钱钱钱钱钱钱钱钱钱钱钱

s363167018 发表于 2013-6-24 18:27:48

低洼打我吊袜带挖到挖到哇
页: [1] 2 3 4 5 6 7 8 9 10
查看完整版本: 酷炫界面引擎(KXUI)易语言皮肤源码 - 全新框架逻辑[ DUI DirectUI 自绘 皮肤]