2016-11-24 86 views
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中工作。

回答

0

将TurbidCrap ++放到bin中,它已经超过20年了,从那以后,有六十个版本的windows已经通过了它。 想一想,过去曾经使用过它的人很久以前就停止使用它了。几乎没有人能够真正回答你的问题,而更少的人仍然可以再次受到TC的困扰。

获得一个与您的实际操作系统兼容的编译器,而不是一些黑客模拟DOS化石。

示例 - 代码块