标题:Space C 控件发布 - 菜单控件 SPMENU.pxe
只看楼主
jig
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
帖 子:530
专家分:242
注 册:2005-12-27
结帖率:100%
 问题点数:0 回复次数:11 
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);
     }
}
/*----------------------------------------------------------------------------*/


效果图:


控件下载:
SPMENU.rar (3.46 KB)


实例工程下载(SpaceC工程):
NewProject.rar (130.15 KB)
搜索更多相关主题的帖子: 菜单控件 pxe SPMENU Space void 
2008-03-13 15:00
阿文先生
Rank: 1
等 级:新手上路
帖 子:24
专家分:0
注 册:2008-3-10
得分:0 
顶啊,下载了,谢谢了


控件方面,如果是多人制作,省了很多的功,控件一般够用就行,功能太怪的,只能由艺术家写了,哈哈

按键,菜单,框架,标签,下拉,列表,背景图标,单选,复选,输入框,应该可以了,


版主看一下,要是可以通过SPC来实现这样的功能,那是太好了:
下面两个文件,放在一起,在WINDOWS下可以直接运行

[[it] 本帖最后由 阿文先生 于 2008-3-13 16:54 编辑 [/it]]

主程序.rar (90.82 KB)


背景.rar (26.71 KB)
2008-03-13 16:41
jig
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
帖 子:530
专家分:242
注 册:2005-12-27
得分:0 
我也想啊,可这样工程量太大了。我一个人高不定。而说实在,这在低彩模式下。并DOS下花怎么大力气没什么实际意义啊。

说真的,我倒是想通过前期练手到时候能用GCC,GTK+等高级的编译器和库做点真正绚和有实际价值的事。只是这个有难度。我自己也在不断学习当中

个人网站 -  http://.h001.
2008-03-13 17:56
jig
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
帖 子:530
专家分:242
注 册:2005-12-27
得分:0 
后面,我会逐步把基本的什么,滚动条,列表框慢慢做出来的。

LZ是不是接什么活了?要在DOS下这样做皮?

其实直接用图片做更NB。只是可能会不能显示。

我以前就做过系统修复,数据恢复的软件。皮也是超绚的,直接美工给画了用我自己写的图形包来显示。

可这样的东西不实际。谁还全方位支持DOS??问题多多

个人网站 -  http://.h001.
2008-03-13 17:59
阿文先生
Rank: 1
等 级:新手上路
帖 子:24
专家分:0
注 册:2008-3-10
得分:0 
哪有什么活,哈哈

我原来在电脑公司做,不过现在出来了,搞农业,没办法..

有空的时候就搞搞,因为以前一直都做系统维护的,一天离开电脑就觉得不好过。
------------------------
我认为低彩模式方面的兼容性还不错,基本能用的电脑都可以显示出来,显示方面太高了,反而不行。

对于DOS下的程序,我认为比WIN下的要底层得多,这是一个特点,也是很难替代的。对于图形界面的DOS,那就更好,互动性很强。对于WIN下的编程工具有很多,但是DOS下的,真的是没有几个,所以说,越少越好用,支持版主,坚持!
2008-03-13 18:35
jig
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
帖 子:530
专家分:242
注 册:2005-12-27
得分:0 
哈哈,你的想法不错。我之前也是在一个公司做那系统维护数据恢复的东东
说起来也是我第一份工作,呵呵。
我也有要自己做系统维护的想法,只是实践证明DOS真不是太现实。虽然我也做了640X480X16色的图形模式,但还是不完美。当然~~如果是我们这样的会编程的人可能会用的好些。可你要给完全WIN下用习惯的普通用户用。。。。。呵呵

现在那公司也是在最后的挣扎阶段。


你若是看重DOS的底层,呵呵~~

我也承认。但他并不是唯一的选择,有很多东西比他NB。。。。。。

[[it] 本帖最后由 jig 于 2008-3-13 18:58 编辑 [/it]]

个人网站 -  http://.h001.
2008-03-13 18:56
阿文先生
Rank: 1
等 级:新手上路
帖 子:24
专家分:0
注 册:2008-3-10
得分:0 
电脑这个行业,好像很难做的,服务要好,技术要跟上,....累

不好还好,我现在农业,不怕客户,就怕台风,
2008-03-13 21:34
jig
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
帖 子:530
专家分:242
注 册:2005-12-27
得分:0 
呵呵,很羡慕你啊。能真把编程当爱好。我也怀念在学校学习技术的时光。。。。。。

现在工作很没意思,要赶任务。而且为了商业化利益,你必须在大众的系统环境,“正统的开发工具”下弄,很TM烦。

我也想什么时候不干这个,干点别的,只是没办法刚出来要糊口~~~~~~

不过我确定我干不长久,说实在我不适合干这行,我达不到那些技术大牛的高度。现在也就自娱自乐一下。工作是各方面自己把握协调好(主要指在完成任务的前提下尽量偷懒)

到时候实在不行回家卖橘子去~~~~~~呵呵

[[it] 本帖最后由 jig 于 2008-3-13 22:59 编辑 [/it]]

个人网站 -  http://.h001.
2008-03-13 22:58
阿文先生
Rank: 1
等 级:新手上路
帖 子:24
专家分:0
注 册:2008-3-10
得分:0 
看了你的软件帮助,照版好像是海南三亚的吧

不知是不是海南人呢?   是不是在海口哪个公司啊?
2008-03-14 00:10
阿文先生
Rank: 1
等 级:新手上路
帖 子:24
专家分:0
注 册:2008-3-10
得分:0 
搞农业也是很苦的,今天又喝多了,头很痛...

没办法,处理一些土地纠份问题,不喝不行了
2008-03-14 00:12



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-203222-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.138851 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved