精华区 [关闭][返回]

当前位置:网易精华区>>讨论区精华>>编程开发>>C/C++>>DOS编程>>Re: 在TC2。0中要怎么样调用鼠标?

主题:Re: 在TC2。0中要怎么样调用鼠标?
发信人: shenjiong()
整理人: wenbobo(2002-12-06 22:48:12), 站内信件
【 在 caiplayboy (牵挂你的我) 的大作中提到: 】
: 我是一个C语言的初学者,我想写一个菜单的程序,希望大侠们能教我在TC2。0中
: 调用鼠标。

下面这些,基本够用了吧。

char initmouse();
void showmouse();
void hidemouse();
void readmouse(int *f,int *x,int *y);
void setmousecoord(int x,int y);
void setmousearea(int,int,int,int);
void mousehidearea(int,int,int,int);
char leftprsd();
char rightprsd();
void errmsg();

char initmouse()
{ union REGS inr,outr;
  inr.x.ax=0;
  int86(0x33,&inr,&outr);
  return outr.x.ax;
}

void showmouse()
{ union REGS inr,outr;
  inr.x.ax=1;
  int86(0x33,&inr,&outr);
}

void hidemouse()
{ union REGS inr,outr;
  inr.x.ax=2;
  int86(0x33,&inr,&outr);
}

void readmouse(int *f,int *x,int *y)
{ union REGS inr,outr;
  inr.x.ax=3;;
  int86(0x33,&inr,&outr);
  *f=outr.x.bx;
  *x=outr.x.cx;
  *y=outr.x.dx;
}

char leftprsd()
{ union REGS inr,outr;
  inr.x.ax=3;
  int86(0x33,&inr,&outr);
  return(outr.x.bx&1);
}

void errmsg()
{ printf("Error!  No mouse detected.\nPlease install mouse first!");
  getch();
  quit();
}

int mouseinbox(int x1,int y1,int x2,int y2,int x,int y)
{ return((x>=x1&&x<=x2&&y>=y1&&y<=y2)?1:0);
}

/*************************** End of mouse.h **************************
*****/



--
"爱乐者"主页:
http://bestmusic.126.com

※ 来源:.月光软件站 http://www.moon-soft.com.[FROM: 202.109.19.51]

[关闭][返回]