Turbo C中设置鼠标的几个函数

Author: 四川 何林春 Date: 1996-11-29

        1.MouseShape(Char * Shape)/*定义鼠标的形状*/
        { union REGS regs;
        struct SREGS sregs;
        regs.x.ax=0x09;
        regs.x.bx=0;
        regs.x.cx=0;
        regs.x.dx=FP-OFF(Shape);
        sregs.es=FP-SEG(Shape);
        int 86x(0x33,&regs,&regs,&sregs);
        }
        其中,Shape是鼠标的形状数据,为16*16*2个象素。如果想设置为“手指”模样,可以以汉字库(16点阵字库,如UCDOS的HZK16)中取得字模。至于如何取得字模,已经有相当多的文章介绍,可以参照这些文章,这里不再重复。
        2.Mouse-x-limit(int x1,int x2)/*设置鼠标在X方向(水平方向)活动的范围*/
        { union REGS regs;
        regs.x.ax=0X07;
        regs.x.cx=x1;
        regs.x.dx=x2;
        int 86(0x33,&regs,&regs);
        }
        其中,X1,X2分别为最小界限,最大界限,视显示模式不同而其最小值,最大值不同。
        3.MOuse-y-limit(int y1,int y2)/*设置鼠标在Y方向(垂直方向)活动的范围*/
        { union REGS regs;
        regs.x.ax=0x08;
        regs.x.cx=y1;
        regs.x.dx=y2;
        int 86(0x33,&regs,&regs);
        }
        其中,Y1,Y2分别为最小界限,最大界限,视显示模示不同而其值不同。