2020-01-20 18:57发布
mafeimafei 发表于 2014-11-10 20:24 显示函数中:显示条目数,大于,一屏可显示条目或小于时;好像没有什么区别?不明白。 //*---------------- ...
最多设置5个标签!
//*------------------------------------------------------------------------------
//*显示函数
//*------------------------------------------------------------------------------
void ShowMenu(void)
{
unsigned char i = 0;
MaxItems = MenuPoint[0].MenuCount; //获取当前菜单的条目数
DisplayPoint = DisplayStart;
if (MaxItems > LCD1602MaxDisplaYLinE){ //如果大于能显示的菜单数做处理
for (i = 0;i < LCD1602MaxDisplaYLinE;i++){
LCD1602wRITESTring(i,1,MenuPoint[DisplayPoint].DisplayString);
if ((DisplayPoint) == (UserChoose)){
LCD1602SetWZ(0,0,0x7e); //写小箭头
}
else{
LCD1602SetWZ(i,0,' '); //写空格
}
DisplayPoint += 1; //字符串偏移量+1
if ((DisplayPoint) == (MaxItems)){
DisplayPoint = 0;
}
}
}
else{
for (i = 0;i < LCD1602MaxDisplaYLinE;i++){
LCD1602wRITESTring(i,1,MenuPoint[DisplayPoint].DisplayString);
if ((DisplayPoint) == (UserChoose)){
LCD1602SetWZ(0,0,0x7e); //写小箭头
}
else{
LCD1602SetWZ(i,0,' '); //写空格
}
DisplayPoint += 1; //字符串偏移量+1
if ((DisplayPoint) == (MaxItems)){
DisplayPoint = 0;
}
}
}
}
我搞忘了,你仔细研究下,我当时记得完全是看懂了,只不过对指针结构体的用法这些搞不清楚,知其然。
因为最多是4个条目可现实,如果少于最大条目还要依然按照4个来显示的话,就会多运行了,如果多于最大条目,也只能按照4个条目来运行,例如2个条目的时候,只需要刷两个
一周热门 更多>