关于嵌入式开发中的菜单操作

         屏幕显示对于嵌入式系统开发尤其重要,如果屏幕编程没有处理好,则会给自己以及他人造成很大的困扰,程序会变的混乱不堪,特别是对于菜单的操作。

         这边我介绍一种利用面向对象封装的思想来设计菜单操作,让程序变得清晰明了,并且具有很强的扩展性。

程序如下:

#include "stdio.h"
#include "stdlib.h"
typedef unsigned char BYTE;
typedef unsigned int WORD;
typedef unsigned long DWORD;

#define MenuNum 2
extern BYTE MenuIndex=0;

typedef void(*ExecFun)();


void PressOKKey()
{
    printf("just a test, press ok key\n");
}

void PressCancelKey()
{
    printf("just a test, press cancel key\n");
}

typedef struct SysMenu
{
    char *text;        //菜单文本
    BYTE Xpos,Ypos;    //菜单在LCD上显示的坐标
    ExecFun execFun;
}SysMenuType;

static SysMenuType Menu[MenuNum]=
{
    {"Brightness",10,20,PressOKKey},
    {"Contrast",20,20,PressCancelKey}
};

int main()
{
    Menu[MenuIndex].execFun();
    system("pause");
    return 0;
}
 

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值