• beijing


     1 #include<stdio.h>
     2 #include<string.h>
     3 #include<stdlib.h>
     4 #include<graphics.h>
     5 #include<conio.h>
     6 #include<math.h>
     7 #include<dos.h>
     8 int init;
     9 int read_mouse;
    10 void cursor;
    11 void newxy;
    12 int main()
    13 {
    14     int buttons,x,y;
    15     char str[300];
    16     int driver=VCA;
    17     int moede=VGAHT;
    18     initgraph(&gdriver,&mode,"");
    19     cleardevice();
    20     rectangle(0,0,639,479);
    21     setfillstyle(1,5);
    22     circle(320,240,100);
    23     x=320,y=240;
    24     cursor(x,y);
    25     for(;;)
    26     {
    27 
    28         newxy(&x,&y,&butttons);
    29         if(x>=280&&x<=300&&y>=12&&y<=33&&buttons)
    30         {
    31             cleardevice();
    32             closegraph();
    33             exit(0);
    34         }
    35     }
    36 }
    37 void(int x,int y)
    38 {
    39 
    40     int x1,x2,y1,y2;
    41     x1=x-4;
    42     x2=x+4;
    43     y1=y-3;
    44     y2=y+3;
    45     line(x1,y,x2,y);
    46     line(x,y1,x,y2);
    47 }
    48 int read_mouse(int*mx,int*my,int*mbutton)
    49 {
    50     union REGS regs;
    51     int x0=*mx,y0=*my,button0=*mbutton;
    52     int xnew,ynew;
    53     do
    54     {
    55         regs.x.ax=3;
    56         int86(0x33,&regs,&regs);
    57         xnew=regs.x.cx;
    58         ynew=regs.x.dx;
    59         *mbutton=regs.x.bx;
    60     }
    61     while(xnew==x0&&ynew==y0&&*mbutton==button0);
    62     *mx=xnew;
    63     *my=ynew;
    64     switch(*mbutton)
    65     {
    66 
    67     case 0:
    68         return 0;
    69     case 1:
    70         return 1;
    71     case 2:
    72         return 2;
    73     case 3:
    74         return3;
    75     default :
    76         return4;
    77     }
    78 }
    79 void newxy(int *mx,int *my,int *mbutt)
    80 {
    81 
    82   int ch,xx0=*mx,yy0=*my;
    83   int xm,ym;
    84   ch=read_mouse(&xm,&ym,mbutt);
    85   curse(xx0,yy0);
    86   curse(xm,xy);
    87   switch(ch)
    88   {
    89 
    90       case 0: break;
    91       case 1: cirse(xm,ym,6);break;
    92       case 2: rectangle(xm-6,ym-6,xm+6,ym+6);break;
    93       default : putpixel(xm,ym,7);break;
    94   }
    95     *mx=xm;
    96     *my=ym;
    97 }

  • 相关阅读:
    cocos2d
    Java中== equals hashcode浅析[转]
    javamail发送邮件的简单实例[转]
    跨平台 游戏 引擎
    7 个漂亮的 JavaScript 的时间轴组件 [转]
    Java中的equals学习小结 [转]
    javamail gmail
    JavaMai——邮箱验证用户注册
    daomain
    oDesk Exam
  • 原文地址:https://www.cnblogs.com/moomcake/p/8977899.html
Copyright © 2020-2023  润新知