yw80

分享代码,一起学习进步~

鼠标操作演示

该程序是 EasyX 帮助中的范例程序。

实现的功能是:当移动鼠标时,在鼠标轨迹上画红点,点左键,画一个小方块;按 Ctrl 再点左键,画一个大方块;按鼠标右键退出。

// 程序名称:鼠标操作演示
// 编译环境:Visual C++ 6.0,EasyX 2011惊蛰版
// 最后更新:2009-11-23
//
#include <graphics.h>
#include <conio.h>

void main()
{
	// 初始化图形窗口
	initgraph(640, 480);

	MOUSEMSG m;		// 定义鼠标消息

	while(true)
	{
		// 获取一条鼠标消息
		m = GetMouseMsg();

		switch(m.uMsg)
		{
			case WM_MOUSEMOVE:
				// 鼠标移动的时候画红色的小点
				putpixel(m.x, m.y, RED);
				break;

			case WM_LBUTTONDOWN:
				// 如果点左键的同时按下了 Ctrl 键
				if (m.mkCtrl)
					// 画一个大方块
					rectangle(m.x-10, m.y-10, m.x+10, m.y+10);
				else
					// 画一个小方块
					rectangle(m.x-5, m.y-5, m.x+5, m.y+5);
				break;

			case WM_RBUTTONUP:
				return;	// 按鼠标右键退出程序
		}
	}

	// 关闭图形窗口
	closegraph();
}

添加评论