代码拉取完成,页面将自动刷新
#ifndef __VTOR_MENU_H
#define __VTOR_MENU_H
#ifdef __cplusplus
extern "C" {
#endif
#include "vtor_elec_module_config.h"
#ifdef __VTOR_MENU__
// 菜单名最长字符个数
#define VTOR_MENU_CONFIG_ITEM_NAME_LEN 20
// 使能从列表项回到开头,和开头的前一项是结尾
// #define VTOR_MENU_CONFIG_ROLLBACK
#define VTOR_MENU_OPERATE_NULL 0
#define VTOR_MENU_OPERATE_ENTER 1
#define VTOR_MENU_OPERATE_OUTER 2
#define VTOR_MENU_OPERATE_CLICK 3
#define VTOR_MENU_OPERATE_CHANGE_MENU 6
#define VTOR_MENU_OPERATE_SELECT_MENU 7
#define VTOR_MENU_OPERATE_CHANGE_VALUE 8
#define VTOR_MENU_OPERATE_SET_VALUE 9
typedef struct VtorMenuStruct
{
uint8_t menuName[VTOR_MENU_CONFIG_ITEM_NAME_LEN]; // 当前名
int32_t menuValue; // 每个菜单下只有1个值,同时显示
struct VtorMenuStruct* childMenu; // 父项
struct VtorMenuStruct* parentMenu; // 子项
struct VtorMenuStruct* prevMenu; // 兄项
struct VtorMenuStruct* nextMenu; // 弟项
}VtorMenu;
extern VtorMenu* VtorMenu_CurMenu;
extern VtorMenu* VtorMenu_CurSubMenu;
void VtorMenu_Display(void);
void VtorMenu_Tree(VtorMenu* menu); // 使用树形打印结构,便于分析
void VtorMenu_PreProcess(void); // 预处理,主要是给菜单项赋值
void VtorMenu_ReProcess(void); // 再处理,主要是将菜单项的值赋值给变量
void VtorMenu_Operate(uint8_t OperataType, int32_t opValue); // 用于实现用户操作
void VtorMenu_Relate(VtorMenu* menu, VtorMenu* subMenu);
// 用户实现并调用,初始化树形菜单
void VtorMenu_Init(void);
// 用户实现并调用,完成单个菜单项的显示
void VtorMenu_DisplaySubMenu(uint8_t itemIdx, VtorMenu* menu);
// 用户自行实现,vtormenu自动调用,单个菜单项的点击回调函数
void VtorMenu_ClickHandler(VtorMenu* menu);
#endif // __VTOR_MENU__
#ifdef __cplusplus
}
#endif
#endif
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。