📄 mouse.c
字号:
/******************************** 鼠标操作函数 *************************************/
int Msinit()
{
int recored;
regs.x.ax=0; /* 初始化鼠标*/
int86(0x33,®s,®s);
recored=regs.x.ax;
if(recored==0)
{ printf("Mouse not found !\n");
getch();
return 0;
}
regs. x. ax = 1; /* 显示光标*/
int86(0x33,®s,®s);
return recored;
}
int Nomouse()
{
regs. x. ax = 2; /* 隐藏光标*/
int86(0x33,®s,®s);
}
int Showmouse()
{
regs. x. ax = 1;/* 显示光标*/
int86(0x33,®s,®s);
}
int Msget(int *px,int *py,int *buttons)
{
regs.x.ax=3;
int86(0x33,®s,®s);
*px=regs.x.cx;
*py=regs.x.dx;
*buttons=regs.x.bx;
}
int Msread(int *px,int *py,int *buttons)
{
int but_old=*buttons;
int x_old=*px,y_old=*py;
struct time t;
struct date d;/* 当前时间信息*/
Showmouse();
do{
if(kbhit())
return bioskey(0);
Msget(px,py,buttons);
}while(*px==x_old&&*py==y_old&&*buttons==but_old);
but_old=*buttons;
x_old=*px;
y_old=*py;
return -1;
}
int Msinbox(int x1,int y1,int x2,int y2)
{
int mx,my;
regs.x.ax=3;
int86(0x33,®s,®s);
mx=regs.x.cx;
my=regs.x.dx;
if(mx>=x1&&mx<=x2&&my>=y1&&my<y2) return OK;
else return ERROR;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -