首页 > 代码库 > 我写的界面。。。。库
我写的界面。。。。库
严格地说,这玩意不算是应用,因为我根本就没打算把它写成一个应用。
其实,我也并没有把它当成库,因为我没打算让它在某些平台上跑。
我的打算是它可以在裸机上跑。
效果方面,以及设计方面,是依据我的理解,模仿Windows来做的。
比如 CreateWindowEx 系列函数,窗口消息、功能部分,SetWindowText 这种,差不多都是仿照 Windows 来做的,感觉还凑合,
有些东西是我自己考虑的,比如图像的画法,图像的分层,图层的切换。。。
由于我对画图、界面本身就没有研究,所以,做这个很吃力。。。
现在的效果,是我的界面库的下层接口,调用Linux的底层接口,绘图使用的是 fb ,这么使用主要是编程方便,而且调试方便,整个工程没有使用一个第三方库。
这东西是我大概三个月之前就完成的,最近好忙,一直都没有抽出时间继续修改它、完善它。
它现在可以在 x86 裸机上跑,鼠标键盘功能可以直接挂接驱动(接口封装好了)。
界面功能可以使用VGA标准,直接挂显存,效果可以(都封装好了)。
它现在也可以在ARM上跑,但是我只会用 uboot 来带它跑。
现在主要的问题就是:
缺少一个可用的磁盘文件系统来管理各种文件,比如皮肤资源文件。。
缺少一个可用的互斥方案来实现原子操作,单核单线程好办,但是多核就麻烦了,特别是n核(n>2)。。
这是现在的问题。。我经验不够,能力不足,时间不多,我忍。。希望以后有时间来解决。。
我并不讨厌使用开源的东西,但是个人感觉,使用第三方的东西或者开源的东西,无法锻炼一个人的思维能力、编程能力,都别人弄好了,自己就用就行了?站在我的角度上来说,我不喜欢这么做。所以,我就没有考虑 FAT 等等磁盘格式。
基本界面
窗口可移动
窗口可创建
皮肤可换
标题可修改,可以打字
我写的界面。。。。库