⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 keypad.c

📁 个人编写的欣技8000应用程序(已经测试稳定的应用程序结构),大大简化应用程序的编写.可应用于欣技700~8000之内的机型
💻 C
📖 第 1 页 / 共 2 页
字号:
/*good_file
filename:	Keypad.c
purpose:	deal with the things about input
author:		wx
date:		2003-3-20
*/
#include <8000lib.h>
#include <ucos.h>
#include <string.h>
#include <stdlib.h>
#include <stdio.h>
#include <ctype.h>
#include "global.h"
 char c;


/*从开机logo进入主菜单*/
void WelcInput (BYTE c)
{
	MainMenu(1);
}



/*背光调节*/
void BKLITInput (BYTE c)
{
	clr_scr ();
	switch (c)
	{
	case KEY_UP:
		if (nSelection > 1)
			nSelection--;
		else
			nSelection = 2;
			BKLITMenu(1);
		break;
        
	case KEY_DOWN:
		if (nSelection < 2)
			nSelection++;
		else
			nSelection = 1;
			BKLITMenu(0);
		break;

	case KEY_CR:
	     switch (nSelection)
		 {
			 case 1:
			 lcd_backlit (0);
			 BKLITMenu(0);
			 break;

			 case 2:
			 lcd_backlit (1);
			 BKLITMenu(0);
			 break;
		 }
         break;
	case KEY_ESC:
		nSelection = 3;	
		GJXMenu(1);
		break;
	case '1':          
		lcd_backlit (0);
		BKLITMenu(0);
        break;
	case '2':
		lcd_backlit (1);
		BKLITMenu(0);
        break;
    default:
        break;
	}
}

/*工具箱*/
void GJXInput (BYTE c)
{
	switch (c)
	{
	case KEY_UP:
		if (nSelection > 1)
			nSelection--;
		else
			nSelection = 2;
			GJXMenu(1);
		break;

	case KEY_DOWN:
		if (nSelection < 2)
			nSelection++;
		else
			nSelection = 1;
			GJXMenu(0);
		break;

	case KEY_CR:
		GJXInput((BYTE) nSelection+'0');
        break;

	case KEY_ESC:
		nSelection = 3;
		MainMenu(1);	
		break;

	case '1':          
        nSelection = 1;	
		ShowtimeMenu(1);;
        break;

	case '2':
       	nSelection = 2;	
		BKLITMenu(1);
        break;

	default:
        break;
	}
}
/*主菜单*/
void MainInput (BYTE c)
{
    int d;
    switch (c)
        {
        case KEY_UP:
             if (nSelection > 1)
                 nSelection--;
             else
                 nSelection = 3;

             MainMenu(0);
             break;
        case KEY_DOWN:
             if (nSelection < 3)
                 nSelection++;
             else
                 nSelection = 1;
              MainMenu(0);
             break;
        case KEY_CR:
             MainInput((BYTE) nSelection+'0');
             break;
		case KEY_ESC:
			 break;
        case '1':

             break;
        case '2':
			 nSelection = 1;
			 SJCLMenu(1);
             break;
         case '3':
			 nSelection = 1;
			 GJXMenu(1);
             break;
         default:
             break;
        }
}

/*数据处理菜单*/
void SJCLInput(BYTE c)
{
    switch (c)
        {
        case KEY_UP:
             if (nSelection > 1)
                 nSelection--;
             else
                 nSelection = 2;

             SJCLMenu(0);
             break;

        case KEY_DOWN:
             if (nSelection < 2)
                 nSelection++;
             else
                 nSelection = 1;

             SJCLMenu(0);
             break;

        case KEY_CR:
             SJCLInput((BYTE) nSelection+'0');
             break;

		case KEY_ESC:
			 nSelection = 2;
			 MainMenu(1);
			 break;

        case '1':
             nSelection = 1;
			 TransMenu(1);
	        break;

        case '2':
			 nSelection = 1;
			 BrowMenu(1);
             break;
        default:
             break;
        }
}

/*数据浏览菜单*/
void BrowInput(BYTE c)
{
	switch (c)
	{
	case KEY_UP:
		if (nSelection > 1)
			nSelection--;
		else 
			nSelection = 2;
		BrowMenu(0);
		break;
        
	case KEY_DOWN:
		if (nSelection < 2)
			nSelection++;
		else 
			nSelection = 1;
		BrowMenu(0);
		break;

	case KEY_CR:
		BrowInput((BYTE) nSelection+'0');
        break;
	case KEY_ESC:
		nSelection = 2;	
		SJCLMenu(1);
		break;
	case '1':
		BrowData(input_file, (char*)"数据1:      ");
		nSelection = 1;	
		BrowMenu(1);
        break;
	case '2':
		BrowData(output_file, (char*)"数据2:      ");
		nSelection = 2;	
		BrowMenu(1);
        break;
/*
	case '3':
		brow(oper_file, 1, (char*)"入库码      ");
		nSelection = 3;	
		BrowMenu(1);
        break;
	case '4':
		brow(prov_file, 1, (char*)"出库码      ");
		nSelection = 4;	
		BrowMenu(1);
        break;
*/
	default:
        break;
	}
}

void TransInput(BYTE c)
{
	BOOL result;
	switch (c)
	{
	case KEY_UP:
		if (nSelection > 1)
			nSelection--;
		else
			nSelection = 2;
		TransMenu(0);
		break;
	case KEY_DOWN:
		if (nSelection < 2)
			nSelection++;
		else
			nSelection = 1;
		TransMenu(0);
		break;
	case KEY_CR:
		TransInput((BYTE) nSelection+'0');
        break;
	case KEY_ESC:
		nSelection = 2;	
		SJCLMenu(1);
		break;
	case '1':  
		result = UploadData (2, input_file);
		if(result == TRUE)
		{
			clr_scr();
			gotoxy(0, 1);
			scputs("传送完成!");
			gotoxy(0, 3);
			scputs("清空文件吗?");
			gotoxy(0, 7);
			scputs("1 YES  2 NO ");
			while(1)
			{
				c = getchar();
				if(c == '1')
				{
					chsize(input_file, 0);
					chsize(oper_file, 0);
					gotoxy(0, 5);
					clr_eol();
					puts("完成!");
					gotoxy(0, 7);
					clr_eol();
					OSTimeDly(100);
					break;
				}
				else if(c == '2')
					break;
			}
		}
		nSelection = 1;
		TransMenu(1);
        break;
	case '2': 
		result = UploadData (2, output_file);
		if(result == TRUE)
		{
			clr_scr();
			gotoxy(0, 1);
			scputs("传送完成!");
			gotoxy(0, 3);
			scputs("清空文件吗?");
			gotoxy(0, 7);
			scputs("1 YES  2 NO ");
			while(1)
			{
				c = getchar();
				if(c == '1')
				{
					chsize(output_file, 0);
					chsize(prov_file, 0);
					gotoxy(0, 5);
					clr_eol();
					puts("完成!");
					gotoxy(0, 7);
					clr_eol();
					OSTimeDly(100);
					break;
				}
				else if(c == '2')
					break;
			}
		}
		nSelection = 2;
		TransMenu(1);
        break;
    default:
        break;
	}
}

/*
download file from pc
*/
void DownInput(BYTE c)
{
	switch (c)
	{
	case KEY_UP:
		if (nSelection > 1)
			nSelection--;
		else 
			nSelection = 3;
		DownMenu(0);
		break;
	case KEY_DOWN:
		if (nSelection < 3)
			nSelection++;
		else 
			nSelection = 1;
		DownMenu(0);
		break;
	case KEY_CR:
		DownInput((BYTE) nSelection+'0');
        break;
	case KEY_ESC:
		nSelection = 2;	
		TransMenu(1);
		break;
	case '1':
		DownloadLookup(2, 1); //provider file
		nSelection = 1;
		DownMenu(1);
        break;
	case '2': 
		DownloadLookup(2, 2); //customer file
		nSelection = 2;
		DownMenu(1);		
        break;
	case '3':
		DownloadLookup(2, 3); //operator file
		nSelection = 3;
		DownMenu(1);
		break;
		
	case '4':
		DownloadLookup(2, 4); //stock sheet
		nSelection = 4;
		DownMenu(1);
        break;

	case '5':
		DownloadLookup(2, 5); //shipment sheet
		nSelection = 5;
		DownMenu(1);
        break;
    default:
        break;
  	}
}

/*
upload file to pc
*/
void UppcInput(BYTE c)
{
	BOOL result;
	switch (c)
	{
	case KEY_UP:
		if (nSelection > 1)
			nSelection--;
		else 
			nSelection = 3;
		UppcMenu(0);
		break;
	case KEY_DOWN:
		if (nSelection < 3)
			nSelection++;
		else 
			nSelection = 1;
		UppcMenu(0);
		break;
	case KEY_CR:
		UppcInput((BYTE) nSelection+'0');
        break;
	case KEY_ESC:
		nSelection = 1;	
		TransMenu(1);
		break;
	case '1':
		result = UploadData (2, input_file);
		if(result == TRUE)
		{
			clr_scr();
			gotoxy(0, 1);
			scputs("传送完成!");
			gotoxy(0, 3);
			scputs("清空文件吗?");

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -