unsigned char key_fun_index = 0 ;
/***********菜单结构************************************/
void (*key_fun)();
typedef struct
{
unsigned char key_index;
unsigned char key_enter;
unsigned char key_return;
unsigned char key_up;
unsigned char key_down;
void (*menu_fun)();
} state;
/*******一级菜单列表*********/
void state0(void)
{
}
void state1(void)
{
}
void state2(void)
{
}
void state3(void)
{
}
void state4(void)
{
}
void state5(void)
{
}
state const key_tab[30]=
{
{0,8,0,7,1,(*state0)},
{1,1,1,0,2,(*state1)},
{2,9,2,1,3,(*state2)},
{3,15,3,2,4,(*state3)},
{4,21,4,3,5,(*state4)},
{5,16,5,4,6,(*state5)},//1级菜单
};
void switch_menu(unsigned char key)
{
switch(key)
{
case 0 :
{
key_fun_index = key_tab[key_fun_index].key_enter;这句什么意思啊
break;
}
case 1 :
{
key_fun_index = key_tab[key_fun_index].key_return;
break;
}
case 2 :
{
key_fun_index = key_tab[key_fun_index].key_up;
break;
}
case 3 :
{
key_fun_index = key_tab[key_fun_index].key_down;
break;
}
}
key_fun = key_tab[key_fun_index].menu_fun;这句什么意思??
(*key_fun)();
}
我不懂的地方已经表明了,请前辈们详细的解释一下。。。。。 |