易码技术论坛

 找回密码
 加入易码
搜索
查看: 186937|回复: 4

[求助]谁能给一个LAVA1.0 2.0都能用的键盘输入代码???

[复制链接]
发表于 2006-2-3 20:57:00 | 显示全部楼层
LAVA1.0/2.0的键盘输入是通用的,到Lava3。0才改的。
 楼主| 发表于 2006-2-4 12:55:00 | 显示全部楼层
哦,那我写错了.不好意思~~

我的意思是不含  "_TEXT"  "_GRAPH"  "GetWord"  的键盘输入代码.
发表于 2006-2-6 11:18:00 | 显示全部楼层
很简单。只用getchar函数就可以完成,而且无限兼容。
发表于 2006-2-11 22:02:00 | 显示全部楼层
char input_txt[100];

long e(char n){long x;int i;x=1;if(n>=1)for(i=1;i<=n;i++)x=x*10;return x;}
long getnum(char x,char y,char l)
{
char  p,key,len,i;
long num;
for(;;)
{
memset(input_txt,0,100);
Block(x,y,x+l*6+8,y+14,0);
TextOut(x+1,y+1,input_txt,1);
if(Getms()<128)Line(x+p*6+1,y+1,x+p*6+1,y+13,65);
Refresh();
key=Inkey();
if((key<=57&&key>=48)||key==22||key==23||key==29||key==13);
else continue;
len=strlen(input_txt);
if(key<=57&&key>=48){
  if(len<=l){
   if(p<len)memmove(input_txt+p+1,input_txt+p,len-p);
   input_txt[p]=key;
   p++;}}
else if(key==22)if(p<len)p++;
else if(key==23)if(p>0)p--;
else if(key==29){if(len!=0)
  if(p<len){memmove(input_txt+p,input_txt+p+1,len-p);input_txt[len]=0;}
  else{input_txt[len-1]=0;p--;}}
else if(key==13){num=0;
  if(len==0)return 0;
  for(i=0;i<len;i++)num=num+e(i)*(input_txt[len-i-1]-48);
  return num;}}
}
void gettxt(char x,char y,char l)
{
char  p,key,len;
for(;;)
{
memset(input_txt,0,100);
Block(x,y,x+l*6+8,y+14,0);
TextOut(x+1,y+1,input_txt,1);
if(Getms()<128){setcl(15,0);Line(x+p*6+1,y+1,x+p*6+1,y+13,65);}
Refresh();key=Inkey();
if(isalpha(key)||key==22||key==23||key==29||key==13);
else continue;
len=strlen(input_txt);
if(key==22)if(p<len)p++;
else if(key==23)if(p>0)p--;
else if(key==29){if(len!=0){
  if(p<len){memmove(input_txt+p,input_txt+p+1,len-p);input_txt[len]=0;}
  else{input_txt[len-1]=0;p--;}}}
else if(key==13){return 0;}
else if(isalpha(key)){
  if(len<=l){
   if(p<len)memmove(input_txt+p+1,input_txt+p,len-p);
   input_txt[p]=key;
   p++;}}}}
 楼主| 发表于 2006-2-2 21:51:44 | 显示全部楼层 |阅读模式
谁能给一个LAVA1.0/2.0都能用的键盘输入代码???

谢谢了
您需要登录后才可以回帖 登录 | 加入易码

本版积分规则

Archiver|手机版|小黑屋|EMAX Studio

GMT+8, 2025-6-16 10:17 , Processed in 0.012888 second(s), 18 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表