Previous Page C Projects Home Next Page
- This is a paint brush program.
- It includes computer graphics.
- In this program we can draw using mouse.
- The coordinates of mouse are also displayed as we draw with mouse.
#include<dos.h>
#include<graphics.h>
union REGS i,o;
main()
{
int gd=DETECT,gm,maxx,maxy,x,y,button,prevx,prevy;
initgraph(&gd,&gm,"c:\\turboc3");
maxx=getmaxx();
maxy=getmaxy();
rectangle(0,0,maxx,maxy);
setviewport(1,1,maxx-1,maxy-1,1);
if(initmouse()==0)
{
closegraph();
restorecrtmode();
printf("Mouse driver not loaded");
exit();
}
restrictmouseptr(1,1,maxx-1,maxy-1);
showmouseptr();
while(!kbhit())
{
getmousepos(&button,&x,&y);
if((button&1)==1)
{
hidemouseptr();
prevx=x;
prevy=y;
gotoxy(60,3);
printf("x %d y %d",x,y);
/*while((button&1)==1)*/
while((button)==1)
{
setcolor(15);//15: white color
/* color can be changed as per requirement*/
line(prevx,prevy,x,y);
prevx=x;
prevy=y;
getmousepos(&button,&x,&y);
}
showmouseptr();
}}}
initmouse()
{
i.x.ax=0;
int86(0x33,&i,&o);
return(o.x.ax);
}
showmouseptr()
{
i.x.ax=1;
int86(0x33,&i,&o);
}
hidemouseptr()
{
i.x.ax=2;
int86(0x33,&i,&o);
}
restrictmouseptr(int x1,int y1,int x2,int y2)
{
i.x.ax=7;
i.x.cx=x1;
i.x.dx=x2;
int86(0x33,&i,&o);
i.x.ax=8;
i.x.cx=y1;
i.x.dx=y2;
int86(0x33,&i,&o);
}
getmousepos(int *button,int *x,int *y)
{
i.x.ax=3;
int86(0x33,&i,&o);
*button=o.x.bx;
*x=o.x.cx;
*y=o.x.dx;
gotoxy(60,3);
printf("x %d y %d",*x,*y);
}




