扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
作者:宋宝华 来源:天极网 2007年10月27日
关键字: Linux
void ShowDot() { static BOOL bShowDot = TRUE; /* 再一次领略static关键字的威力 */ if(bShowDot) { showChar(’:’,xPos,yPos); } else { showChar(’ ’,xPos,yPos); } bShowDot = ! bShowDot; } |
图1 菜单范例 |
/* 按下OK键 */ void onOkKey() { /* 判断在什么焦点菜单上按下Ok键,调用相应处理函数 */ Switch(currentFocus) { case MENU1: menu1OnOk(); break; case MENU2: menu2OnOk(); break; … } } /* 按下Cancel键 */ void onCancelKey() { /* 判断在什么焦点菜单上按下Cancel键,调用相应处理函数 */ Switch(currentFocus) { case MENU1: menu1OnCancel(); break; case MENU2: menu2OnCancel(); break; … } } |
/* 将菜单的属性和操作"封装"在一起 */ typedef struct tagSysMenu { char *text; /* 菜单的文本 */ BYTE xPos; /* 菜单在LCD上的x坐标 */ BYTE yPos; /* 菜单在LCD上的y坐标 */ void (*onOkFun)(); /* 在该菜单上按下ok键的处理函数指针 */ void (*onCancelFun)(); /* 在该菜单上按下cancel键的处理函数指针 */ }SysMenu, *LPSysMenu; |
static SysMenu menu[MENU_NUM] = { { "menu1", 0, 48, menu1OnOk, menu1OnCancel } , { " menu2", 7, 48, menu2OnOk, menu2OnCancel } , { " menu3", 7, 48, menu3OnOk, menu3OnCancel } , { " menu4", 7, 48, menu4OnOk, menu4OnCancel } … }; |
/* 按下OK键 */ void onOkKey() { menu[currentFocusMenu].onOkFun(); } /* 按下Cancel键 */ void onCancelKey() { menu[currentFocusMenu].onCancelFun(); } |
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者