Old school Easter eggs.
Tổng lượt truy cập: 53 Số người online: 1
teamxc.xtgem.com xin chào các bạn. Chúc các bạn online vui vẻ


Trong bài viết này mình sẽ hướng dẫn về một số hàm bắt sự kiện click chuột trong chế độ đồ họa Dev-C++.

void getmouseclick( int kind, int& x, int& y );
-> lấy tọa độ x,y ( theo pixel) mà ở đó có click
bool ismouseclick( int kind );
-> trả về true nếu xảy ra click
int mousex( ); -> lấy tọa độ chuột theo trục x
int mousey( ); -> lấy tọa độ chuột theo trục y

WM_MOUSEMOVE : bắt sự kiện khi di chuyển chuột trong màn hình đồ họa
WM_LBUTTONDBLCLK : bắt sự kiện khi nhấn đúp chuột trái
WM_LBUTTONDOWN : bắt sự kiện khi nhấn chuột trái
WM_LBUTTONUP : bắt sự kiện khi thả sau khi nhấn chuột trái
Tuơng tự với chuột giữa và chuột phải
WM_MBUTTONDBLCLK
WM_MBUTTONDOWN
WM_MBUTTONUP
WM_RBUTTONDBLCLK
WM_RBUTTONDOWN
WM_RBUTTONUP

Còn rất nhiều hàm khác bạn xem tại đây: http://www.cs.colorado.edu/~main/bgi/doc/

Một đoạn code minh họa bắt sự kiện chuột trái, phải.


Kết quả khi click và di chuyển chuột trong màn hình đồ họa:

Trong bài viết này mình sẽ hướng dẫn về một số hàm bắt sự kiện click chuột trong chế độ đồ họa Dev-C++.

void getmouseclick( int kind, int& x, int& y );
-> lấy tọa độ x,y ( theo pixel) mà ở đó có click
bool ismouseclick( int kind );
-> trả về true nếu xảy ra click
int mousex( ); -> lấy tọa độ chuột theo trục x
int mousey( ); -> lấy tọa độ chuột theo trục y

WM_MOUSEMOVE : bắt sự kiện khi di chuyển chuột trong màn hình đồ họa
WM_LBUTTONDBLCLK : bắt sự kiện khi nhấn đúp chuột trái
WM_LBUTTONDOWN : bắt sự kiện khi nhấn chuột trái
WM_LBUTTONUP : bắt sự kiện khi thả sau khi nhấn chuột trái
Tuơng tự với chuột giữa và chuột phải
WM_MBUTTONDBLCLK
WM_MBUTTONDOWN
WM_MBUTTONUP
WM_RBUTTONDBLCLK
WM_RBUTTONDOWN
WM_RBUTTONUP

Còn rất nhiều hàm khác bạn xem tại đây: http://www.cs.colorado.edu/~main/bgi/doc/

Một đoạn code minh họa bắt sự kiện chuột trái, phải.

01

02

03

04

05

06

07

08

09

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

#include <winbgim.h>

#include <stdio.h>

#include <string.h>

int main(){

setbkcolor(1);

 int x, y;

 initwindow(800,500);

 setbkcolor(15);

 cleardevice();

 while (1){

 delay(0.0001);

 if (ismouseclick(WM_LBUTTONDOWN)){

 getmouseclick(WM_LBUTTONDOWN, x, y);

 printf("left click : (%d,%d)n", x, y);

 }

 if (ismouseclick(WM_LBUTTONUP)){

 getmouseclick(WM_LBUTTONUP, x, y);

 printf("left up click : (%d,%d)n", x, y);

 }

 if (ismouseclick(WM_LBUTTONDBLCLK)){

 getmouseclick(WM_LBUTTONDBLCLK, x, y);

 printf("left double click : (%d,%d)n", x, y);

 }

 if (ismouseclick(WM_RBUTTONDOWN)){

 getmouseclick(WM_RBUTTONDOWN, x, y);

 printf("right click : (%d,%d)n", x, y);

 }

 if (ismouseclick(WM_RBUTTONUP)){

 getmouseclick(WM_RBUTTONUP, x, y);

 printf("right up click : (%d,%d)n", x, y);

 }

 if (ismouseclick(WM_RBUTTONDBLCLK)){

 getmouseclick(WM_RBUTTONDBLCLK, x, y);

 printf("right double click : (%d,%d)n", x, y);

 }

 if (ismouseclick(WM_MOUSEMOVE)){

 getmouseclick(WM_MOUSEMOVE, x, y);

 printf("move : (%d,%d)n", x, y);

 }

 }

 system("pause");

 closegraph();

}