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

📄 mouse.cpp

📁 用C++控制喷泉程序
💻 CPP
字号:
#include "dos.h"
#include "stdio.h"
#include "struct.h"
int x,y;
unsigned int f;
int InitMouse(void)
{
	union REGS Inr,Outr;
	struct SREGS segregs;
	Inr.x.ax = 0;
	int86x(0x33,&Inr,&Outr,&segregs);
	if(Outr.x.ax==0)
	{
	 printf("Mouse Init Error1");
	 return -1;
	}
	return 0;
}

void ShowMouse(void)
{
	union REGS Inr,Outr;
	struct SREGS segregs;
	Inr.x.ax = 1;
	int86x(0x33,&Inr,&Outr,&segregs);
}

void HideMouse(void)
{
	union REGS Inr,Outr;
	struct SREGS segregs;
	Inr.x.ax = 2;
	int86x(0x33,&Inr,&Outr,&segregs);
}
int ReadMouse(void)
{
	static int Oldf=0;
	union REGS Inr,Outr;
	struct SREGS segregs;
	int m;
	Inr.x.ax = 3;
	int86x(0x33,&Inr,&Outr,&segregs);
	f=Outr.x.bx;
	m=Oldf^f;
	if(m&0x01)
	{
	 if(f&0x01)
	 {
		f=0xffff;
	 }
	}
	Oldf=Outr.x.bx;
/*	f=0;
	if((Outr.x.bx&0X01)==1)
	{
		f=0xff;
		if(FreeFlag==1)
		{
			f=1;
			FreeFlag=0;
		}
	}
	else
	{
	 f=Outr.x.bx;
	 FreeFlag=1;
	}*/
	x = Outr.x.cx;
	y = Outr.x.dx;
	return f;
}
int ReturnButton(BUTTON *button,int num)
{
 int i,x1,y1,height,lengh;
 ShowMouse();
 if (f == 0xffff)
 {
	for(i=0;i<num;i++)
	{
	 if(button[i].EnableFlag==1)
	 {
		x1=button[i].x;
		y1=button[i].y;
		height=button[i].height;
		lengh=button[i].lengh;
		if((x>=x1-0.5*lengh)&&(x<=x1+0.5*lengh)&&(y>=y1-0.5*height)&&(y<=y1+0.5*height))
		{
		 return(i);
		}
	 }
	}
 }
 return(-1);
}
int ReturnItem(ITEMBUTTON *button,int num)
{
 int i,x1,y1,height,lengh;
 ShowMouse();
 if (f == 0xffff)
 {
	for(i=0;i<num;i++)
	{
	 if(button[i].EnableFlag==1)
	 {
		x1=button[i].x;
		y1=button[i].y;
		height=button[i].height;
		lengh=button[i].lengh;
		if((x>=x1-0.5*lengh)&&(x<=x1+0.5*lengh)&&(y>=y1-0.5*height)&&(y<=y1+0.5*height))
		{
		 return(i);
		}
	 }
	}
 }
 return(-1);
}

⌨️ 快捷键说明

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