| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2131 人关注过本帖, 1 人收藏
标题:Space C 控件发布 - 菜单控件 SPMENU.pxe
取消只看楼主 加入收藏
jig
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
帖 子:530
专家分:242
注 册:2005-12-27
结帖率:100%
收藏(1)
 问题点数:0 回复次数:5 
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
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
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
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
jig
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
帖 子:530
专家分:242
注 册:2005-12-27
收藏
得分:0 
不是,在深圳拍的。你是海南的??我同学是海南的,很想什么时候去海南玩一趟

我在做自己的打包工具,做好了,我就把最新版的SPACEC发出来。其实变化不大,只是修正了些发现的问题。

个人网站 -  http://.h001.
2008-03-14 08:44
快速回复:Space C 控件发布 - 菜单控件 SPMENU.pxe
数据加载中...
 
   



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

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