[原创]Space C 控件发布 - 滚动条控件 SPSLBAR.pxe
滚动条控件 作者:孙靖 版本号:V1.0事件方式:函数指针
注意调整属性:
Color1, Color2, Color3, Color4 以实现更改菜单的外观效果
MaxValue 以指定最大值
Value 范围 0 ~ MaxValue-1
VHMode 类型 0-纵向 1-横向
相关函数:
void SP_ScareteScrollBar(SPSLBAR *ScrollBar); /* 隐藏滚动条 */
void SP_RevealScrollBar(SPSLBAR *ScrollBar); /* 重显滚动条 */
数据结构如下:
typedef (*SPScrollBar_Change)(UINT16);
typedef struct
{
UINT8 *Name; /* 滚动条名称 */
UINT16 Enable:1; /* 滚动条是否可操作 */
UINT16 Visible:1; /* 滚动条是否可见 */
INT16 Left; /* 滚动条在屏幕的坐标 */
INT16 Top;
UINT16 Width; /* 滚动条的宽高 */
UINT16 Height;
UINT16 Value; /* 当前值 */
UINT16 MaxValue; /* 最大移动数 */
UINT16 VHMode:1; /* 滚动条类型H-0, V-1 */
SPCOLOR Color1; /* 滚动条边框和中间的颜色 */
SPCOLOR Color2;
SPCOLOR Color3;
SPCOLOR Color4;
UINT16 MoveButton:1; /* 标记移动按钮是否被按下 */
UINT16 Old_XY; /* 用于记录移动按钮的位置 */
SPScrollBar_Change Change; /* 滚动条改变值 */
} SPSLBAR;
效果图:
[attach]33036[/attach]
控件下载:[attach]33037[/attach]
实例代码(SpaceC工程):[attach]33038[/attach]
[[it] 本帖最后由 jig 于 2008-3-17 16:26 编辑 [/it]] "滚动条控件 作者:孙靖 版本号:V1.0"
原来是我本家啊..呵呵..高手都隐藏在这里...过来看看....路过 这叫做卧虎藏龙..
那是你孙大哥. 周周都用新东东,越来越强大
不过,目前没有太多时间,只能搞搞网络恢复方面的东东 出问题拉,当多个控件之间出现复用的时候,不知道怎么来防止重定义
可就算用预编译来处理,那以后每多个控件,也许就要对以前的控件做少许更改,我现在在想办法来解决这个问题
所以一个涉及到系统架够的东西,总有太多让人意味的事出现。
看来复杂的确就是软件的本质特性,目前来说任何妄图简化软件复杂度的工作都是徒劳的。 我顶,我顶 没办法,看来在SPACEC里面,控件还是要尽量避免复用。当然,可以这样设计,可这样就要使用人员手动保留一下若干文件。
比如:做列表框需要复用滚动条,那滚动条的结构声明并在前端。若采用宏预编译使其互异,可在多个甚至N个控件要复用的时候。那就有可能要对原有控件内容做小修改。。。。。。
郁闷中哦。只能说架构上出问题啦,如果在最前端将所有控件声明加载就可以解决问题,这样对SPACEC的IDE也少做点工作。可这样编译出来的程序将有一定扩容。呵呵,所以说很多时候你得到的只能是一部分。呵呵
不过,我还是会再争取一下,看有什么办法能折中一下。我是想做成,可以任意复用,同时也不用对已有的控件做修改的方法。
[[it] 本帖最后由 jig 于 2008-3-18 09:30 编辑 [/it]] 可那来要真实现这个,要重新发布一次以前的控件,做些许更改,我会发个新贴将新控件发布出来
其实改动很小,加一些宏来进行互异,这样暂时可以保证以后可以任意复用其他控件,可这样我怕后面又遇到其他问题。
页:
[1]
