📄 input.c
字号:
#include <iom128v.h>
#include "lcd.h"
#include "display.h"
#include "touch.h"
unsigned char input_buffer[10];
#define Key_Data_size 15
struct Command const Key_Data[]=
{
{50,80,50,50,30,30,GREEN," 1","1",RED,BIG,GREEN,},//1
{110,80,50,50,30,30,GREEN," 2","2",RED,BIG,GREEN,},//2
{170,80,50,50,30,30,GREEN," 3","3",RED,BIG,GREEN,},//3
{230,80,50,50,30,30,GREEN," 4","4",RED,BIG,GREEN,},//4
{50,113,50,50,30,30,GREEN," 5","5",RED,BIG,GREEN,},//5
{110,113,50,50,30,30,GREEN," 6","6",RED,BIG,GREEN,},//6
{170,113,50,50,30,30,GREEN," 7","7",RED,BIG,GREEN,},//7
{230,113,50,50,30,30,GREEN," 8","8",RED,BIG,GREEN,},//8
{50,146,50,50,30,30,GREEN," 9","9",RED,BIG,GREEN,},//9
{110,146,50,50,30,30,GREEN," 0","0",RED,BIG,GREEN,},//0
{170,146,50,50,30,30,GREEN," +","+",RED,BIG,GREEN,},//+
{230,146,50,50,30,30,GREEN," -","-",RED,BIG,GREEN,},//-
{50,179,82,82,30,30,GREEN,"Backspace","Backspace",RED,SMALL,GREEN,},//Backspace
{197,179,83,83,30,30,GREEN," Enter"," Enter",RED,SMALL,GREEN,},//Enter
{140,179,50,50,30,30,GREEN," ."," .",RED,BIG,GREEN,},//.
};
unsigned char GetCursor(struct Command Cursor_data)
{
if((cursor.x >Cursor_data.x)&&(cursor.y >Cursor_data.y)&&((cursor.x-Cursor_data.x)<Cursor_data.width)&&((cursor.y - Cursor_data.y) < Cursor_data.lenth))
{
//Dis_Command(Cursor_data);
cursor.flag = 0;
return 1;
}
else
{
return 0;
}
}
//从显示屏输入口中得到一个数据
void Input_Data(void)
{
unsigned int i;
unsigned char temp;
for(i=0;i<9;i++)
{
input_buffer[i]= ' ';
}
input_buffer[9]= 0;
Dis_Rect(20,20,280,200,BLUE);//画一个外框
Dis_Rect(80,50,150,26,WHITE);//画一个输入框
Dis_Menu(Key_Data,Key_Data_size);
cursor.x = cursor.y = 0;
cursor.flag = 0;
Display(80,50,input_buffer,BIG,RED,WHITE);
while(1)
{
if(cursor.flag == 1)
{
cursor.flag = 0;
for(i = 0;i<Key_Data_size;i++)
{
if(GetCursor(Key_Data[i]))
{
temp=i;
break;
}
}
if(i!=temp)
{
continue;
}
if(i == 13)
{
break;
}
//if(temp==12) temp=15;
switch (temp)
{
case 0: for(i = 0;i<8;i++)
{
input_buffer[i] = input_buffer[i+1];
}
input_buffer[8] = '1';
Display(80,50,input_buffer,BIG,RED,WHITE);
break;
case 1: for(i = 0;i<8;i++)
{
input_buffer[i] = input_buffer[i+1];
}
input_buffer[8] = '2';
Display(80,50,input_buffer,BIG,RED,WHITE);
break;
case 2: for(i = 0;i<8;i++)
{
input_buffer[i] = input_buffer[i+1];
}
input_buffer[8] = '3';
Display(80,50,input_buffer,BIG,RED,WHITE);
break;
case 3: for(i = 0;i<8;i++)
{
input_buffer[i] = input_buffer[i+1];
}
input_buffer[8] = '4';
Display(80,50,input_buffer,BIG,RED,WHITE);
break;
case 4: for(i = 0;i<8;i++)
{
input_buffer[i] = input_buffer[i+1];
}
input_buffer[8] = '5';
Display(80,50,input_buffer,BIG,RED,WHITE);
break;
case 5: for(i = 0;i<8;i++)
{
input_buffer[i] = input_buffer[i+1];
}
input_buffer[8] = '6';
Display(80,50,input_buffer,BIG,RED,WHITE);
break;
case 6: for(i = 0;i<8;i++)
{
input_buffer[i] = input_buffer[i+1];
}
input_buffer[8] = '7';
Display(80,50,input_buffer,BIG,RED,WHITE);
break;
case 7: for(i = 0;i<8;i++)
{
input_buffer[i] = input_buffer[i+1];
}
input_buffer[8] = '8';
Display(80,50,input_buffer,BIG,RED,WHITE);
break;
case 8: for(i = 0;i<8;i++)
{
input_buffer[i] = input_buffer[i+1];
}
input_buffer[8] = '9';
Display(80,50,input_buffer,BIG,RED,WHITE);
break;
case 9: for(i = 0;i<8;i++)
{
input_buffer[i] = input_buffer[i+1];
}
input_buffer[8] = '0';
Display(80,50,input_buffer,BIG,RED,WHITE);
break;
case 10:for(i = 0;i<8;i++)
{
input_buffer[i] = input_buffer[i+1];
}
input_buffer[8] = '+';
Display(80,50,input_buffer,BIG,RED,WHITE);
break;
case 11: for(i = 0;i<8;i++)
{
input_buffer[i] = input_buffer[i+1];
}
input_buffer[8] = '-';
Display(80,50,input_buffer,BIG,RED,WHITE);
break;
case 13: break;
case 14: for(i = 0;i<8;i++)
{
input_buffer[i] = input_buffer[i+1];
}
input_buffer[8] = '.';
Display(80,50,input_buffer,BIG,RED,WHITE);
break;
case 12: for(i = 8;i>0;i--)
{
input_buffer[i] = input_buffer[i-1];
}
input_buffer[0] = ' ';
Display(80,50,input_buffer,BIG,RED,WHITE);
break;
default: break;
}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -