0
我是相对较新的编程和我的学校项目,我想利用我的程序中的按钮,所以我在Turbo C++中做了一个实验程序,以查看我的逻辑工作或不。涡轮C++鼠标没有采取当前点击状态
我的实验程序的想法是,当鼠标光标在输出屏幕中显示的方块内并且用户单击时,程序应该退出。 问题是该程序只按预期工作一次。如果再次运行,则即使未点击鼠标按钮,程序也会退出(即,无论点击状态如何,程序会在光标位于正方形内时退出)。这是我的实验程序:
#include<process.h>
#include<conio.h>
#include<graphics.h>
#include<dos.h>
union REGS in,out;
void main()
{
int gdriver = DETECT,gmode;
int xp,yp,cl=0;
int x,y;
initgraph(&gdriver,&gmode,"C:\\Turboc3\\BGI");
x=getmaxx()/2;
y=getmaxy()/2;
in.x.ax=4;
in.x.cx=10;
in.x.dx=10;
int86(51,&in,&out);
in.x.ax=1;
int86(51,&in,&out);
setcolor(RED);
rectangle((x-100),(y-100),x,y);
in.x.ax=3;
do
{
int86(51,&in,&out);
cl=out.x.bx; //Status of click
xp=out.x.cx; //X-co-ordinate
yp=out.x.dx; //Y-co-ordinate
}while(!((cl==1)&&(((xp>x-100)&&(xp<x))&&((yp>y-100)&&(yp<y))));
}
如果我的逻辑有问题,请告诉我它是什么。任何和所有的帮助是高度赞赏。 请不要对我选择的编译器做出居高临下的评价。我被迫在Turbo C++中工作,因为我的学校不允许我在任何其他IDE中工作。