搜索产品 minitos开源嵌入式操作系统 minitos Windows minitos Menu
首 页 产品展厅 精品文章 嵌入式资讯 下载中心 论坛 嵌入式城市 技术应用
 收藏社区
 免费注册
 用户登陆
 帮助中心
社区首页 业界新闻 精品文章 下载中心 minitos2站 在线学习 论坛 嵌入式提问交流学习 供求信息 留言 minitos操作系统 测试
今天是:2010年9月9日 星期四   您现在位于: miniTOS生活社区 →  嵌入式菜单模板文件menutpl.c
谷歌搜本站效率更高
嵌入式菜单模板文件menutpl.c
2009年3月24日  作者:  发布人:专业嵌入式网站      本文已被浏览 176 次
/*
    
   minitos Menu 采用和Windows一样的菜单设计API,快速设计嵌入式菜单系统。
   可以根据所选择的菜单触发一个子程序运行。(酷吧,像delphi的事件函数一样:) )

 minitos就是 mini Task OS,意思是迷你的rTOS.

http://www.minitos.com  minitos嵌入开发网主站
http://www2.minitos.com minitos嵌入开发网2站
http://net.minitos.com   minitos嵌入开发网网络站
http://www2.minitos.com/bbs 嵌入式论坛
http://ask.embed.cc  嵌入式提问吧

minitos 嵌入操作系统 : http://www.minitos.com/index.htm
minitos Windows C++嵌入图形系统 http://www.minitos.com/index.htm

  
    本文实现minitos Menu 的菜单摸板
 created by Linls,2003.8
*/


/*
菜单摸板
*/

#include <string.h>
#include "menu.h"
#include "MenuTpl.h"


MENUITEM Top[3] = {
 /*Name,    ID ,  Type,SubMenu, Key, bExit, Func, EnterFunc,pNext, pPrev */

 {"Top1",   0,    0,    0,       0,   TRUE  ,NULL,NULL,     NULL, NULL},
 {"Top2",   0,    0,    0,       0,   TRUE  ,NULL,NULL,     NULL, NULL},
 {"Top3",   0,    0,    0,       0,   TRUE  ,NULL,NULL,     NULL, NULL}

};

MENUITEM ItemExp[2]={

 /*Name,     ID,  Type,SubMenu, Key, bExit, Func, EnterFunc, pNext, pPrev */

 {"item1",   200, 0,   0,       0,    TRUE  ,NULL,NULL,     NULL, NULL},
 {"item2",   201, 0,   0,       0,    TRUE  ,NULL,NULL,     NULL, NULL}
 
};




HMENU CreateFileMenu (void)
{
    HMENU hPopupMenu;
   
    hPopupMenu = CreatePopupMenu ();

    AppendMenu(hPopupMenu, MF_ENABLED, IDM_NEW, "new"); 
 AppendMenu(hPopupMenu, MF_ENABLED, IDM_OPEN, "open"); 
    
    return hPopupMenu;
}
HMENU CreateEditMenu (void)
{
    HMENU hPopupMenu;
   
    hPopupMenu = CreatePopupMenu ();

    AppendMenu(hPopupMenu, MF_ENABLED, IDM_COPY, "Copy"); 
 AppendMenu(hPopupMenu, MF_ENABLED, IDM_PASTE, "Paste"); 
    
    return hPopupMenu;
}

/*
菜单设计方式1
自底向上设计菜单
*/
HMENU CreateMenu_System1 (void)
{
    HMENU hMenu,hPopup;
   
    hMenu = CreateMenu ();

 hPopup = CreateFileMenu();
    AppendMenu(hMenu, MF_POPUP, (UINT)hPopup, "!File"); 

 hPopup = CreateEditMenu();
    AppendMenu(hMenu, MF_POPUP, (UINT)hPopup, "!Edit"); 
    return hMenu;
}

/*
菜单设计方式2
自顶向下设计菜单
*/
HMENU CreateMenu_System2 (void)      
{
    HMENU hPopupMenu_System;  
    hPopupMenu_System = CreatePopupMenu();

 
 AppendMenu(hPopupMenu_System, MF_ENABLED, 301, "TestItem0"); 
 

 {
  HMENU hPopupMenu_File;
  hPopupMenu_File = AppendPopupMenu(hPopupMenu_System,"!File");
  {
  
   AppendMenu(hPopupMenu_File, MF_ENABLED, IDM_NEW, "new"); 
   AppendMenu(hPopupMenu_File, MF_ENABLED, IDM_OPEN, "open");
  }
 }
 

 {
  HMENU hPopupMenu_Edit;
  hPopupMenu_Edit = AppendPopupMenu(hPopupMenu_System,"!Edit");
  {
   AppendMenu(hPopupMenu_Edit, MF_ENABLED, IDM_COPY, "Copy"); 
   AppendMenu(hPopupMenu_Edit, MF_ENABLED, IDM_PASTE, "Paste"); 
   {
    HMENU hPopupMenu_Hello;
    hPopupMenu_Hello = AppendPopupMenu(hPopupMenu_Edit,"!Hello");
    {
     AppendMenu(hPopupMenu_Hello, MF_ENABLED, 501, "Hello L1"); 
     AppendMenu(hPopupMenu_Hello, MF_ENABLED, 502, "Hello L2");
    }
   
   }
  }
 }

    return hPopupMenu_System;
}

/*
菜单设计方式3
表格方式设计菜单
注意:采用表格方式设计菜单的菜单项不能删除,因为这些项不是动态分配内存的
*/
HMENU CreateMenu_System3 (void)      
{
 HMENU pMenuTop,hMenu;

 pMenuTop =InitMenuItemList(Top,3);
 hMenu = InitMenuItemList(ItemExp,2);
 SetMenuItem((PMENUPOPUP)pMenuTop, &(Top[0]),hMenu );

 hMenu = CreateMenu_System2();
 SetMenuItem((PMENUPOPUP)pMenuTop, &(Top[1]),hMenu );

 return pMenuTop;
}
 发布人:minitos
 [ → 我要发表文章 ]
上篇文章:嵌入式菜单系统核心头文件menu.h
下篇文章:嵌入式菜单系统模板头文件menutpl.h
→ 主题所属分类:  minitos → 嵌入式菜单minitosMenu → 『关闭窗口』
 热门文章
 
 skyeye安装运行的详细方法--step by step (20693)
 cygwin下安装arm-elf-gcc一种简便方法 (5876)
 充电器设计及镍氢电池充电方法2 (3373)
 镍氢电池充电方法及充电器(二) (2545)
 Instruction Set: Analysis of SH66x... (2309)
 FAT16文件系统格式详细说明 (2132)
 充电器设计及镍氢电池充电方法1 (1931)
 使用GDB-gnu debug (1689)
 单片机数码管显示驱动设计 (1678)
 一步一步的制作 arm-linux 交叉编译环境 (1577)
 最近更新
 
 QTE 4安装方法 (6月3日)
 真是好文,fc6安装qte,共享 (6月3日)
 超低价部分原装IGBT销售 (6月2日)
 Protel99SE快捷键大全 (6月2日)
 Protel 99 SE的功能特性 (6月2日)
 Protel 99 SE的系统组成 (6月2日)
 设计PCB时抗静电放电(ESD)的方法 (6月2日)
 模拟集成电路 (6月2日)
 数字集成电路 (6月2日)
 语音集成电路 (6月2日)
 文章搜索
 
搜索选项:            
  → 评论内容 (点击查看)
姓名:aicaqnvkzsy  E-mail:qtdadr@wareow.com  发表时间:2010年4月20日 10时37分
评论内容:BbVE1V  <a href="http://frxjeosiityn.com/">frxjeosiityn</a>, [url=http://ufjsmcztuwjb.com/]ufjsmcztuwjb[/url], [link=http://vrbnrqyeszot.com/]vrbnrqyeszot[/link], http://nnmnvafqaciw.com/
姓名:kdhjfdh  E-mail:yjfyjj@sdf.com  发表时间:2009年5月12日 14时48分
评论内容:<a href=http://www.flytickets.com.cn/planeticket/7_1.html>成都机票</a> <a href=http://www.langfangpc.cn>廊坊电脑</a> <a href=http://www.flytickets.com.cn/planeticket/6_1.html>重庆机票</a> <a href=http://www.jipiaoku.cn/>机票</a>
姓名:adhthdh  E-mail:htasddtd@sdf.com  发表时间:2009年5月11日 20时8分
评论内容:<a href=http://www.langfangpc.cn>廊坊电脑</a> <a href=http://www.langfangpc.cn>廊坊电脑</a> <a href=http://www.flytickets.com.cn/planeticket/8_1.html>杭州机票</a> <a href=http://www.flytickets.com.cn/planeticket/3_1.html>广州机票</a>
  → 发表我的评论
您的姓名:  您的E-mail:

评论内容:
发表评论:  
娱乐中心 ┋ 关于本站 ┋ 站内短信 ┋ 广告服务 ┋ 友情链接 ┋ 与我在线 ┋ 版权声明  TOP
本站总访问量: 196310 人次 ┋ 最高峰 589 人在线 ┋ 当前有 6 人在线
专业嵌入式网站 [完整型] ┋页面执行时间:234.375 毫秒
Copyright © 2002-2005 minitos.com All Rights Reserved
友情链接: embed嵌入开发网 ┋ 嵌入式提问网 ┋ 嵌入式资料网 ┋ 网络站 ┋ 论坛 ┋