该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
b=0; /*保证上面不出界*/
if(a>getmaxx()-R)
a=getmaxx()-R; /*保证右边不出界*/
if(b>getmaxy()-R)
b=getmaxy()-R; /*保证下边不出界*/
if(a!=a_old || b!=b_old) /*当鼠标移动时*/
{
putimage(a_old,b_old,ball,0); /*在a_old,b_old输出图形,用来擦掉原来的鼠标*/
getimage(a,b,a+R,b+R,ball); /*这条语句是将目前鼠标所在位置的图形存贮到ball里面试着看着有无这条语句的区别*/
/*不需要在获取了*/
setcolor(RED);
setlinestyle(0,0,1);
line(a,b,a+R,b+R/2);
line(a,b,a+R/2,b+R);
line(a+R,b+R/2,a+R/2,b+R);
line(a+R*3/4,b+R*3/4,a+R,b+R); /*Draw mouse*/
}
a_old=a;b_old=b;
}
*x=a;
*y=b;
*z=c; /*Return the value*/
putimage(a,b,ball,0); /*Clear the mouse,因为存在ball里面的是一个背景为缺省状态下的一个空矩形*/
free(ball);
return;
} /*The ideal 是通过getimage,putimage,imagesize图形的存贮一个当前的图形来擦拭掉以前的鼠标图形,也可以用清屏部分屏幕来实现*/
int cover()
{
int x,y,z;
while(1)
{
cleardevice();
setbkcolor(CYAN);
setcolor(BLUE);
settextstyle(0,0,5); /*文本属性,Set word style: fornt 为字体:DEFAULT_FONT, TRIPLEX_FONT, SMALL_FONT, SANSSERIF_FONT, GOTHIC_FONT,也可以用0 ~ 4代替。 direction 为字符的排列方向:横向和竖向,0为横向排列,1为竖向排列。 size 为字体大小:可用interger做参数。*/
outtextxy(190,100,"GOPHERS"); /*在指定位置显示一字符串 */
rectangle(110,220,230,300);
setfillstyle(SOLID_FILL,MAGENTA); /*Set colour*/
bar(110,220,230,300);
settextstyle(0,0,3);
outtextxy(112,245,"BEGIN");
rectangle(410,220,530,300);
setfillstyle(SOLID_FILL,MAGENTA);
bar(410,220,530,300);
outtextxy(425,245,"EXIT");
setcolor(RED);
settextstyle(0,0,2);
outtextxy(20,400,"Made_by_Michelle_Petter_and_xxxxx");
visbilemouse();
mouse(&x,&y,&z);