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

📄 mouse.h

📁 《C语言程序设计实训》源代码
💻 H
字号:
#include <conio.h>
#include <dos.h>
char InitMs()
{       /*鼠标复位*/
	union REGS Inr, Outr;
	Inr.x.ax=0;
	int86(0x33,&Inr,&Outr);
	if(Outr.x.ax==0)   return 0;
	else    return 1;
}
void ShowMs()           
{       /*显示鼠标光标*/
	union REGS Inr, Outr;
	Inr.x.ax=1;
	int86(0x33,&Inr,&Inr);
}
void HideMs()
{       /*隐藏鼠标光标*/
	union REGS Inr, Outr;
	Inr.x.ax=2;
	int86(0x33,&Inr,&Inr);
}
char LeftPrsd()
{       /*按鼠标左键*/
	union REGS Inr, Outr;
	Inr.x.ax=3;
	int86(0x33,&Inr,&Outr);
	return(Outr.x.bx&1);
}
char RightPrsd()
{       /*按鼠标右键*/
	union REGS Inr, Outr;
	Inr.x.ax=3;
	int86(0x33,&Inr,&Outr);
	return(Outr.x.bx&2);
}
void ReadMs(int *f, int *x, int y)       /*f: 按键状态*/
{       /*读鼠标状态*/                         /*    LEFT:  1*/
	union REGS Inr, Outr;                /*    RIGHT: 2*/
	Inr.x.ax=3;                          /*x: 水平坐标*/
	int86(0x33,&Inr,&Outr);              /* y: 垂直坐标*/
	*f=Outr.x.bx;
	*x=Outr.x.cx;
	*y=Outr.x.dx;
}
void SetMsXY(int x, int y)
{       /*	设置鼠标光标位置*/
	union REGS Inr, Outr;
	Inr.x.cx=x;
	Inr.x.dx=y;
	Inr.x.ax=4;
	int86(0x33,&Inr,&Inr);
}
void SetMsArea(int Xmin, int Ymin, int Xmax, int Ymax)
{	/*设置鼠标移动范围*/
	union REGS Inr, Outr;
	Inr.x.ax=7;
	Inr.x.cx=Xmin;
	Inr.x.dx=Xmax;
	int86(0x33,&Inr,&Inr);
	Inr.x.ax=8;
	Inr.x.cx=Ymin;
	Inr.x.dx=Ymax;
	int86(0x33,&Inr,&Inr);
}
void MsHideArea(int x1, int y1, int x2, int y2)
{       /*设置隐藏鼠标区域*/
	union REGS Inr, Outr;
	Inr.x.cx=x1;
	Inr.x.dx=y1;
	Inr.x.si=x2;
	Inr.x.di=y2;
	Inr.x.ax=0x10;
	int86(0x33,&Inr,&Inr);
}
int MsInBox(int x1, int y1, int x2, int y2, int x, int y)
{	/*判断鼠标是否在某一矩形区域内*/
	return((x>=x1&&x<=x2&&y>=y1&&y<=y2)?  1 : 0 );
}

⌨️ 快捷键说明

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