menu.h
上传用户:zfj3589
上传日期:2022-07-13
资源大小:635k
文件大小:6k
- /****************************************************************************************
- * 文件名:MENU.H
- * 功能:菜单显示及操作,头文件。
- * 作者:黄绍斌
- * 日期:2004.02.26
- * 备注:
- ****************************************************************************************/
- #ifndef MENU_H
- #define MENU_H
- /* 定义主菜单宽度,及最大菜单个数 */
- #define MMENU_WIDTH 34
- #define MMENU_NO 6
- /* 定义菜单的宽度(下拉菜单),及最大子菜单个数 */
- #define SMENU_WIDTH 66
- #define SMENU_NO 8
- /* 定义一子菜单项的数据结构 */
- typedef struct
- { WINDOWS *win; // 所属窗口
- uint8 mmenu_no; // 对应的主菜单项号(0-n)
-
- uint8 no; // 子菜单项个数
- char *str[SMENU_NO]; // 子菜单字符串
- uint8 state; // 所选择的子菜单
-
- void (*Function[SMENU_NO])(void); // 子菜单对应的服务程序
- } SMENU;
- /* 主菜单数据结构 */
- typedef struct
- { WINDOWS *win; // 所属窗口
- uint8 no; // 主菜单个数
- char *str[MMENU_NO]; // 主菜单字符串
- } MMENU;
- /* 定义图标菜单数据结构 */
- typedef struct
- { uint32 x; // 图标菜单位置(左上角的x坐标)
- uint32 y; // 图标菜单位置(左上角的y坐标)
- uint8 *icodat; // 32*32的ICO数据地址
- uint8 *title; // 相关标题提示 (42*13)
- uint8 state; // 图标菜单状态,为0时表示未选中,为1时表示已选中
-
- void (*Function)(void); // 对应的服务程序
- } MENUICO;
- /****************************************************************************
- * 名称:GUI_MMenuDraw()
- * 功能:显示主菜单,加上边框。
- * 入口参数:men 主菜单句柄
- * 出口参数:返回0表示操作失败,返回1表示操作成功
- ****************************************************************************/
- extern uint8 GUI_MMenuDraw(MMENU *men);
- /****************************************************************************
- * 名称:GUI_MMenuSelect()
- * 功能:当前主菜单,加下划线,表示当前主菜单。
- * 入口参数:men 主菜单句柄
- * no 所选的主菜单项
- * 出口参数:无
- ****************************************************************************/
- extern void GUI_MMenuSelect(MMENU *men, uint8 no);
- /****************************************************************************
- * 名称:GUI_MMenuNSelect()
- * 功能:取消当前主菜单,去除下划线。
- * 入口参数:men 主菜单句柄
- * no 所选的主菜单项
- * 出口参数:无
- ****************************************************************************/
- extern void GUI_MMenuNSelect(MMENU *men, uint8 no);
- /****************************************************************************
- * 名称:GUI_SMenuDraw()
- * 功能:显示子菜单,加上边框。
- * 入口参数:men 菜单句柄
- * 出口参数:返回0表示操作失败,返回1表示操作成功
- ****************************************************************************/
- extern uint8 GUI_SMenuDraw(SMENU *men);
- /****************************************************************************
- * 名称:GUI_SMenuSelect()
- * 功能:选择新的子菜单。
- * 入口参数:men 子菜单句柄
- * old_no 原先选择的子菜单项
- * new_no 现要选择的子菜单项
- * 出口参数:无
- ****************************************************************************/
- extern void GUI_SMenuSelect(SMENU *men, uint8 old_no, uint8 new_no);
- /****************************************************************************
- * 名称:GUI_SMenuHide()
- * 功能:消隐子菜单项。
- * 入口参数:men 子菜单句柄
- * 出口参数:返回0表示操作失败,返回1表示操作成功
- ****************************************************************************/
- extern uint8 GUI_SMenuHide(SMENU *men);
- /****************************************************************************
- * 名称:GUI_Button49x14()
- * 功能:显示49*14按钮。
- * 入口参数: x 指定显示位置,x坐标
- * y 指定显示位置,y坐标
- * dat 显示的数据地址
- * 出口参数:返回0表示操作失败,返回1表示操作成功
- ****************************************************************************/
- extern void GUI_Button49x14(uint32 x, uint32 y, uint8 *dat);
- /****************************************************************************
- * 名称:GUI_Button_OK()
- * 功能:显示49*14按钮"OK"。
- * 入口参数: x 指定显示位置,x坐标
- * y 指定显示位置,y坐标
- * 出口参数:返回0表示操作失败,返回1表示操作成功
- ****************************************************************************/
- extern void GUI_Button_OK(uint32 x, uint32 y);
- /****************************************************************************
- * 名称:GUI_Button_OK1()
- * 功能:显示49*14按钮,选择状态的"OK"。
- * 入口参数: x 指定显示位置,x坐标
- * y 指定显示位置,y坐标
- * 出口参数:返回0表示操作失败,返回1表示操作成功
- ****************************************************************************/
- extern void GUI_Button_OK1(uint32 x, uint32 y);
- /****************************************************************************
- * 名称:GUI_Button_Cancle()
- * 功能:显示49*14按钮"Cancle"。
- * 入口参数: x 指定显示位置,x坐标
- * y 指定显示位置,y坐标
- * 出口参数:返回0表示操作失败,返回1表示操作成功
- ****************************************************************************/
- extern void GUI_Button_Cancle(uint32 x, uint32 y);
- /****************************************************************************
- * 名称:GUI_Button_Cancle1()
- * 功能:显示49*14按钮,选择状态的"Cancle"。
- * 入口参数: x 指定显示位置,x坐标
- * y 指定显示位置,y坐标
- * 出口参数:返回0表示操作失败,返回1表示操作成功
- ****************************************************************************/
- extern void GUI_Button_Cancle1(uint32 x, uint32 y);
- /****************************************************************************
- * 名称:GUI_MenuIcoDraw()
- * 功能:显示图标菜单。
- * 入口参数:ico 图标菜单句柄
- * 出口参数:返回0表示操作失败,返回1表示操作成功
- ****************************************************************************/
- extern uint8 GUI_MenuIcoDraw(MENUICO *ico);
- #endif