ТОР 5 статей: Методические подходы к анализу финансового состояния предприятия Проблема периодизации русской литературы ХХ века. Краткая характеристика второй половины ХХ века Характеристика шлифовальных кругов и ее маркировка Служебные части речи. Предлог. Союз. Частицы КАТЕГОРИИ:
|
Пример программы работы с мышью#include <stdio.h> #include <conio.h> #include <string.h> #include <dos.h>
void main() { int x,y; void Hidecursor(); void Showcursor(); void mouse_on (); void mouse_off (); int mouse_check_x(); int mouse_check_y(); int mouse_button(); int i,ex; textbackground(BLUE); clrscr(); gotoxy(1,1); cprintf("input any symbol to activate the mouse"); if(!getch()) getch(); mouse_on(); Hidecursor(); gotoxy(1,24); cprintf("input any symbol to activate cursor\n"); do { gotoxy(10,10); x=mouse_check_x(); y=mouse_check_y(); x=x/8;y=y/8; if(x>=9&&x<=23&&y==9) ; else printf("x=%2d, y=%2d",x,y); i=mouse_button(); if (i!=0) { gotoxy(15,15); if(x>=14&&x<=25&&y==14) ; else switch (i) { case 1: printf("Left button"); break; case 4: printf("Center button"); break; case 2: printf("Right button"); break; }; gotoxy(5,5);} ex=kbhit(); }while (ex==0); mouse_off(); gotoxy(36,24); if(!getch()) getch(); Showcursor(); if(!getch()) getch(); } void mouse_on(void) { int a; a=_AX;_AX=0001; geninterrupt(0x33); _AX=a; }
void mouse_off(void) { int a; a=_AX;_AX=0002; geninterrupt(0x33); _AX=a; } int mouse_check_x(void) { int x; int a; a=_AX;_AX=0003; geninterrupt(0x33); _AX=a;x=_CX; return (x); } int mouse_check_y(void) { int y; int a; a=_AX;_AX=0003; geninterrupt(0x33); _AX=a;y=_DX; return(y); }
int mouse_button(void) { int b; int a; a=_AX;_AX=0003; geninterrupt(0x33); _AX=a;b=_BX; return(b); }
void Hidecursor(void) { _AH=0x01; _CH=0x20; _CL=00; geninterrupt(0x10);
}
void Showcursor(void) { _AH=0x01; _CH=0x06; _CL=07; geninterrupt(0x10);
} Не нашли, что искали? Воспользуйтесь поиском:
|