⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 menu.h

📁 通过车载终端采集GPS数据
💻 H
字号:
#ifndef _MENU_H_
#define _MENU_H_

/*keil编译时,使用code 
  vxworks编译时,code改为空格*/
#define CODE_TYPE code 

typedef char (*FUNCTION_TYPE)(char FlashLcd);


/*菜单处理宏定义*/
#define NOCHANGE_MENU  0/*有按键*/
#define NEXT_MENU      1/*下级菜单*/
#define PREVIEW_MENU   2/*上级菜单*/
#define RIGHT_MENU     3/*同级菜单的下一选项*/
#define LEFT_MENU      4/*同级菜单的上一选项*/
#define NOKEY_MENU     5/*没有按键*/
#define NEXT_MENU1     6/*下级菜单*/
#define NEXT_MENU2     7/*下级菜单*/
#define NEXT_MENU3     8/*下级菜单*/
#define NEXT_MENU4     9/*下级菜单*/

/*0xF0~0xFF保留给其它程序处理*/


#define KEEP_SCREEN    0/*屏幕保持,不刷新*/
#define FLASH_SCREEN   1/*屏幕刷新*/


/*菜单处理指针指向弹出菜单结构*/
#define MENU_POP_DONE	1
/*菜单处理指针指向主菜单处理结构函数*/
#define MENU_POP_NONE	0


#define MAX_FLOOR       10/*定义菜单的最大级数*/

/*菜单处理的数据结构*/
typedef struct MENU_STRUCT
{
    FUNCTION_TYPE function;/*本级菜单的处理函数*/
  //  struct MENU  *father;/*指向上级菜单的结构指针,如果为主菜单,初始化为NULL*/
    struct MENU_STRUCT  *son;/*指向下级菜单的结构指针,如果为最底级菜单,初始化为NULL*/
}MENU;

typedef struct MENU_INFO_STRUCT
{
    char MenuPopReturnFlag;     /*该标志为菜单弹出是否返回标志*/
    char rebrushLcd;            /*该变量为处理函数参数,标志是否刷新菜单*/

    unsigned int holdTime;      /*背光打开的时间。此值是一个计数器,在MenuProcess中加1*/
    unsigned int returnTimer;   /*背光延时定时器。为0关闭背光强制在主界面,非0打开背光*/

    unsigned char floorCnt;     /*记录所在层*/
    MENU *Father[MAX_FLOOR];

    void (*ptrScroll)(char);    /*滚动条显示函数.0:空格, 1:向上 2:向下*/
    void (*ptrBackLight)(char); /*背光控制程序. 0:关背光, 1:打开背光*/
} MENU_INFO;


extern void meunInit(MENU *pInitMenu, int holdTime, void *funcScroll, void *funcBackLight);
extern void MenuProcess(void);
extern void menuPopUp(MENU *ptr);


/***************弹出菜单***************/
extern const  MENU CODE_TYPE menu8_main[]; 
void openLight();

#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -