Space C 控件发布 - 菜单控件 SPMENU.pxe
菜单控件事件方式:函数指针
注意调整属性:
Color1, Color2, Color3 以实现更改菜单的外观效果
相关函数:
void SP_ScareteMenu(SPMENU *Menu); /* 隐藏菜单 */
void SP_RevealMenu(SPMENU *Menu); /* 重显菜单 */
数据结构如下:
typedef void (*SPBUTTON_ClickAndMove)(UINT16, UINT16);
typedef (*SPMENU_Click)(UINT16, UINT16, UINT16);
typedef struct
{
UINT8 *Name; /* 菜单名称 */
UINT8 Enable; /* 菜单是否可操作 */
UINT8 Visible; /* 菜单是否可见 */
INT16 Left; /* 菜单在屏幕的坐标 */
INT16 Top;
UINT16 Width; /* 菜单的宽高 */
UINT16 Height;
INT16 Index; /* 标记当前选中条目 */
SPCOLOR Color1; /* 菜单边框和中间的颜色 */
SPCOLOR Color2;
SPCOLOR Color3;
UINT8 *Caption; /* 菜单名称以'&'符来划分项 如: 1234&456& */
SPMENU_Click Click; /* 点击事件函数指针 */
} SPMENU;
在Space C中,选中加控件,并 Ctrl+H 将给出控件帮助信息。
演示实例代码:
#include "Hello.h"
/*----------------------------------------------------------------------------*/
void MainBack_Click(UINT8 Button, INT16 X, INT16 Y)
{
/* 右键鼠标,弹出菜单 */
if (Button == 2 && !SP_Menu1.Visible)
{
SP_Menu1.Left = X;
SP_Menu1.Top = Y;
SP_RevealMenu(&SP_Menu1);
}
}
/*----------------------------------------------------------------------------*/
void SP_Menu1_Click(UINT16 Index, UINT16 X, UINT16 Y)
{
/* 退出演示程序 */
if (Index == 4)
{
SP_GraClose();
exit(0);
}
}
/*----------------------------------------------------------------------------*/
效果图:
[attach]32941[/attach]
控件下载:[attach]32942[/attach]
实例工程下载(SpaceC工程):[attach]32943[/attach] 顶啊,下载了,谢谢了
控件方面,如果是多人制作,省了很多的功,控件一般够用就行,功能太怪的,只能由艺术家写了,哈哈
按键,菜单,框架,标签,下拉,列表,背景图标,单选,复选,输入框,应该可以了,
版主看一下,要是可以通过SPC来实现这样的功能,那是太好了:
下面两个文件,放在一起,在WINDOWS下可以直接运行
[[it] 本帖最后由 阿文先生 于 2008-3-13 16:54 编辑 [/it]] 我也想啊,可这样工程量太大了。我一个人高不定。而说实在,这在低彩模式下。并DOS下花怎么大力气没什么实际意义啊。
说真的,我倒是想通过前期练手到时候能用GCC,GTK+等高级的编译器和库做点真正绚和有实际价值的事。只是这个有难度。我自己也在不断学习当中 后面,我会逐步把基本的什么,滚动条,列表框慢慢做出来的。
LZ是不是接什么活了?要在DOS下这样做皮?
其实直接用图片做更NB。只是可能会不能显示。
我以前就做过系统修复,数据恢复的软件。皮也是超绚的,直接美工给画了用我自己写的图形包来显示。
可这样的东西不实际。谁还全方位支持DOS??问题多多 哪有什么活,哈哈
我原来在电脑公司做,不过现在出来了,搞农业,没办法..
有空的时候就搞搞,因为以前一直都做系统维护的,一天离开电脑就觉得不好过。
------------------------
我认为低彩模式方面的兼容性还不错,基本能用的电脑都可以显示出来,显示方面太高了,反而不行。
对于DOS下的程序,我认为比WIN下的要底层得多,这是一个特点,也是很难替代的。对于图形界面的DOS,那就更好,互动性很强。对于WIN下的编程工具有很多,但是DOS下的,真的是没有几个,所以说,越少越好用,支持版主,坚持! 哈哈,你的想法不错。我之前也是在一个公司做那系统维护数据恢复的东东
说起来也是我第一份工作,呵呵。
我也有要自己做系统维护的想法,只是实践证明DOS真不是太现实。虽然我也做了640X480X16色的图形模式,但还是不完美。当然~~如果是我们这样的会编程的人可能会用的好些。可你要给完全WIN下用习惯的普通用户用。。。。。呵呵
现在那公司也是在最后的挣扎阶段。
你若是看重DOS的底层,呵呵~~
我也承认。但他并不是唯一的选择,有很多东西比他NB。。。。。。
[[it] 本帖最后由 jig 于 2008-3-13 18:58 编辑 [/it]] 电脑这个行业,好像很难做的,服务要好,技术要跟上,....累
不好还好,我现在农业,不怕客户,就怕台风, 呵呵,很羡慕你啊。能真把编程当爱好。我也怀念在学校学习技术的时光。。。。。。
现在工作很没意思,要赶任务。而且为了商业化利益,你必须在大众的系统环境,“正统的开发工具”下弄,很TM烦。
我也想什么时候不干这个,干点别的,只是没办法刚出来要糊口~~~~~~
不过我确定我干不长久,说实在我不适合干这行,我达不到那些技术大牛的高度。现在也就自娱自乐一下。工作是各方面自己把握协调好(主要指在完成任务的前提下尽量偷懒)
到时候实在不行回家卖橘子去~~~~~~呵呵
[[it] 本帖最后由 jig 于 2008-3-13 22:59 编辑 [/it]] 看了你的软件帮助,照版好像是海南三亚的吧
不知是不是海南人呢? 是不是在海口哪个公司啊? 搞农业也是很苦的,今天又喝多了,头很痛...
没办法,处理一些土地纠份问题,不喝不行了 不是,在深圳拍的。你是海南的??我同学是海南的,很想什么时候去海南玩一趟
我在做自己的打包工具,做好了,我就把最新版的SPACEC发出来。其实变化不大,只是修正了些发现的问题。 我是海南的,在这边出生,不过不算是真正的海南人。
有新版出啊!
等待中。。。
页:
[1]
