📄 录入数据.c
字号:
//---------------------------------------------------------------------------------------------------
//标准菜单程序
//
//
//---------------------------------------------------------------------------------------------------
#include "menu.h"
#include "CM240128.H"
#include "输入状态栏.h"
#include "gprs.h"
#include "功能选择菜单.h"
#include "数据存储.h"
#include "m41t0drv.h"
#include <string.h>
#include "main.h"
//---------------------------------------------------------------------------------------------------
xdata DataType InputData;
idata unsigned char InputLoc;
void MENU_InputData_Load(unsigned char *pBuf)
{
unsigned char i;
pBuf=pBuf;
Lcd_Init();
ClrDisplay();
SetCurrLoc(0,0);
DisplayStr("数据录入:",30);
SetCurrLoc(0,16);
DisplayStr("姓 名:",30);
SetCurrLoc(0,32);
DisplayStr("证件号:",30);
SetCurrLoc(8,16);
DisplayStr(">",30);
for(i=0;i<10;i++)InputData.name[i]=0;
for(i=0;i<20;i++)InputData.id[i]=0;
InputLoc=0;
//输入法选择
//val == //0字母 1数字 2拼音
InputStateOption(2);
}
//---------------------------------------------------------------------------------------------------
//刷新
void MENU_InputData_refurbish(void)
{
//user code
//user code end
}
//---------------------------------------------------------------------------------------------------
//数据输入
void MENU_InputData_incept(unsigned char *pBuf)
{
//user code
xdata DateTimeTYP datetime;
unsigned char l1,l2;
if(pBuf==0)return;
if(*pBuf==1)
{//向上箭头姓名输入
SetCurrLoc(8,16);DisplayStr(">",30);
SetCurrLoc(8,32);DisplayStr(" ",30);
InputLoc = 0;
//输入法选择
//val == //0字母 1数字 2拼音
InputStateOption(2);
return;
}
if(*pBuf==3)
{//向下箭头身份号输入
SetCurrLoc(8,16);DisplayStr(" ",30);
SetCurrLoc(8,32);DisplayStr(">",30);
InputLoc = 1;
//输入法选择
//val == //0字母 1数字 2拼音
InputStateOption(1);
return;
}
if(*pBuf==15)
{//按下删除键
if(InputLoc == 0)
{//name删除
l1 = strlen(InputData.name);
if(l1!=0)InputData.name[l1-2]=0;
SetCurrLoc(9,16);
DisplayFill(' ',20);
SetCurrLoc(9,16);DisplayStr(InputData.name,20);
return;
}
if(InputLoc == 1)
{//id删除
l1 = strlen(InputData.id);
if(l1!=0)InputData.id[l1-1]=0;
SetCurrLoc(9,32);
DisplayFill(' ',20);
SetCurrLoc(9,32);DisplayStr(InputData.id,20);
return;
}
}
if(*pBuf == 0x0a)
{//确认 回车键
if(strlen(InputData.name)==0)return;
if(strlen(InputData.id)==0)return;
GetM41T0Time(&datetime);
InputData.datetime[0] = (datetime.year>>4)+'0';
InputData.datetime[1] = (datetime.year&0x0f)+'0';
InputData.datetime[2] = (datetime.month>>4)+'0';
InputData.datetime[3] = (datetime.month&0x0f)+'0';
InputData.datetime[4] = (datetime.date>>4)+'0';
InputData.datetime[5] = (datetime.date&0x0f)+'0';
InputData.datetime[6] = (datetime.hour>>4)+'0';
InputData.datetime[7] = (datetime.hour&0x0f)+'0';
InputData.datetime[8] = (datetime.min>>4)+'0';
InputData.datetime[9] = (datetime.min&0x0f)+'0';
InputData.datetime[10] = 0;
InputData.datetime[11] = 0;
AppendData(&InputData);
GoMainMenu();
return;
}
if(*pBuf == 0x06)
{//取消 ctl键
GoMainMenu();
return;
}
if(InputLoc == 0)
{//name输入
l1 = strlen(InputData.name);
l2 = strlen(pBuf);
if((l1+l2)<10)strcat(InputData.name,pBuf);
SetCurrLoc(9,16);
DisplayFill(' ',20);
SetCurrLoc(9,16);DisplayStr(InputData.name,20);
}
if(InputLoc == 1)
{//id输入
l1 = strlen(InputData.id);
l2 = strlen(pBuf);
if((l1+l2)<20)strcat(InputData.id,pBuf);
SetCurrLoc(9,32);
DisplayFill(' ',20);
SetCurrLoc(9,32);DisplayStr(InputData.id,20);
}
//user code end
}
//---------------------------------------------------------------------------------------------------
//---------------------------------------------------------------------------------------------------
//下面是不可改写的代码
void MENU_InputData(unsigned char *pBuf)
{
MenuSet(MENU_InputData_refurbish,MENU_InputData_incept);
MENU_InputData_Load(pBuf);
}
//---------------------------------------------------------------------------------------------------
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -