📄 judgekey.cpp
字号:
#define KB_ENTER 0x1c
#define KB_F1 0x3b
#define KB_F2 0x3c
#define KB_F10 0x44
#define KB_ESC 0x1
#define KB_UP 0x48
#define KB_DOWN 0x50
#include <conio.h>
#include <graphics.h>
#include <string.h>
#include <stdlib.h>
#include <iostream.h>
#include <dos.h>
#include "item.h"
extern void MessageBox(char *);
extern void quitFun();
int getKey()
{
union REGS rg;
rg.h.ah=0;
int86(0x16,&rg,&rg);
return rg.h.ah;
};
int jkey(char *temp,int max)
{
int j=0;
char t;
while(1)
{
t=getch();
if((t!=8)&&(t!=27)&&(t!=13)&&(j<max))
{
temp[j]=t;
cout<<temp[j];
j++;
}
else if(t==8&&j>0)
{
temp[j-1]=0;
gotoxy(wherex()-1,wherey());
cout<<" ";
gotoxy(wherex()-1,wherey());
j--;
}
else if(t==27) return 1;
else if(t==13)
{
temp[j]='\0';
break;
}
}
return 0;
};
void judgeKey(Item *p)
{
int key;
Item *pp=p;
Item *pi=p;
Item *end=p;
Item *first=p;
for(end;end->getNext();end=end->getNext());
while(1)
{
key=getKey();
switch(key)
{
case KB_F1: MessageBox("Sorry,Do it yourself!");break;
case KB_F2: MessageBox("About Me:Lxcong C4");break;
case KB_F10:quitFun();
case KB_ESC:return;
case KB_UP:pi->resetBK();
if(pi==first)
{pi=end;pi->changeBK(7);}
else
for(pp=first;;pp=pp->getNext())
if(pp->getNext()==pi){pi=pp;pi->changeBK(7);break;}
break;
case KB_DOWN:pi->resetBK();
if(pi==end)
{pi=first;pi->changeBK(7);}
else
{pi=pi->getNext();pi->changeBK(7);}
break;
case KB_ENTER:(pi->getPointTo())();break;
}
pi=pi->search(key,p,pi);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -