多任务GUI窗口系统(类window,有源码,支持汉字显示、顶层、非矩形和透明窗口)gicell源码

http://bbs.chinaunix.net/viewthread.php?tid=942230

源代码下载:http://www.cn-dos.net/forum/atta ... c12e&download=1
                  https://gro.clinux.org/frs/download.php/2035/giCell_20070713.rar

演示下载:http://gro.clinux.org/frs/download.php/2083/giCell_1024x768.rar

功能如下:

1. 完善而精巧的多视口裁剪和消隐处理引擎,与微内核rtCell紧密结合;

2. 真正的事件(或消息)驱动的多窗口(视口)技术,支持顶层窗口和透明窗口的显示和
    裁剪处理;

3. 当前支持Label、Edit、Botton、Slider、Listbox、TreeView、ListView、Scrollbar和
    Checkbox控件,其中的Edit控件支持剪切、复制和粘贴(ctrl+x,ctrl+c,ctrl+v);

4. 类 Windos 窗口,支持平移、缩放,光标切换、窗口系统按钮,及窗口和控件的过程回调;

5. 基于透明视口(或窗口)的裁剪和消隐处理,可生成任何非矩形(多态)窗口,本示例
    中的三角形窗口就是基于透明视口来实现的;

6. 支持图形内存设备(GDC),有效避免窗口重绘时闪烁,易于实现视频及动画处理;

7. ListView支持标题栏平移和缩放,Scrollbar支持鼠标滚轮驱动,支持Windows XP 标准9号宋体;

8. 内存需求小,窗口和控件的缺省状态均不使用GDC(而是采用直接屏技术),所耗内存小,
    因此实用性强,包括rtCell调度器、鼠标、键盘及图形驱动的库文件在DOS下仅70余K。

演示方法:解压缩gui_demo.rar,在windows下(双击)执行gui_demo.bat,或在纯dos下直接执行gui.exe(在windows的dos窗口中无法执行)
                  
注意:看到动画之后(此时鼠标初始化完成)可点击鼠标进行操作,
      点击时钟窗口上的3D cube复选框可切换动画...

[ 本帖最后由 taowentao 于 2007-10-2 06:11 编辑 ]

gui.rar(68.24 KB)

纯DOS演示文件

支持Windows XP 标准9号宋体

支持12点阵汉字(需要文件 hz12.bin ),汉字字库为Windows XP 标准9号宋体。可调用DOS文件功能(但是影响实时性能),按下键“SHIFT + ESC”退出rtCell,并返回到DOS系统。

注意DOS不可重入,在GUI任务之外调用DOS功能之前应加GUI锁,调用之后应解锁,且调用DOS功能的任务优先级应低于16(因为已在一个优先级高于16的任务中接管了所有的DOS硬件中断),而DOS功能调用仍基于忙等待机制:
void _cdecl_ GUILock(void);      /* 锁定GUI,保护共享数据安全 */
void _cdecl_ GUIUnLock(void);    /* 解锁GUI,加解锁应成对出现 */

相关源码(http://www.cn-dos.net/forum/atta ... c12e&download=1)

虚拟机演示(http://gro.clinux.org/frs/download.php/2083/giCell_1024x768.rar)

此外,在此演示中还需矢量字库文件:KTDOT.PS,请到“矢量汉字显示实例[源码]——happybasic”(http://www.cn-dos.net/forum/viewthread.php?tid=27441&fpage=3) 中下载此文件。

源代码本地下载地址:多任务GUI窗口系统图形控件库源码C_lib.rar

原文地址:https://www.cnblogs.com/chulia20002001/p/1887287.html