EasyX涂格子游戏


#include "stdafx.h"
#include<graphics.h>
#include<conio.h>
int main()
{
	//绘制窗口
	initgraph(560,560);  
	
	//绘制格子
	for(int i=0;i<=560;i+=70){
		line(i,0,i,560);
		line(0,i,560,i);
	}
	
	//绘制选色区
	setfillcolor(RED);
	fillrectangle(0,490,70,560);
	setfillcolor(GREEN);
	fillrectangle(70,490,140,560);
	setfillcolor(BLUE);
	fillrectangle(140,490,210,560);
	setfillcolor(YELLOW);
	fillrectangle(210,490,280,560);
	setfillcolor(LIGHTBLUE);
	fillrectangle(280,490,350,560);
	setfillcolor(WHITE);
	fillrectangle(350,490,420,560);
	setfillcolor(MAGENTA);
	fillrectangle(420,490,490,560);
	setfillcolor(CYAN);
	fillrectangle(490,490,560,560);

 	MOUSEMSG m;         //定义鼠标信息
	COLORREF c;         //颜色值	
	while(1){
	m=GetMouseMsg();    //获得一条鼠标信息
	switch(m.uMsg){
	case WM_LBUTTONDOWN: {          //单击选色区
		if(m.x>=0&&m.x<=70&&m.y>=490&&m.y<=560)         
			c=getpixel(m.x,m.y);    //取当前鼠标所在点的颜色
		if(m.x>70&&m.x<=140&&m.y>=490&&m.y<=560)
			c=getpixel(m.x,m.y);
		if(m.x>140&&m.x<=210&&m.y>=490&&m.y<=560)
			c=getpixel(m.x,m.y);
		if(m.x>210&&m.x<=280&&m.y>=490&&m.y<=560)
			c=getpixel(m.x,m.y);			
		if(m.x>280&&m.x<=350&&m.y>=490&&m.y<=560)
			c=getpixel(m.x,m.y);
		if(m.x>350&&m.x<=420&&m.y>=490&&m.y<=560)
			c=getpixel(m.x,m.y);
		if(m.x>420&&m.x<=490&&m.y>=490&&m.y<=560)
			c=getpixel(m.x,m.y);
		if(m.x>490&&m.x<=560&&m.y>=490&&m.y<=560)
			c=getpixel(m.x,m.y);
						}break;
	case WM_LBUTTONDBLCLK:        //双击涂色区
		if(m.x>=0&&m.x<=560&&m.y>=0&&m.y<=560){
         setfillcolor(c);         //填充颜色为c
		 for(int i=0;i<8;i++)     //寻找当前鼠标所在的i,j
			 for(int j=0;j<8;j++){
           if(m.x>=(70*i)&&m.x<=(70*i+70)&&m.y>=(70*j)&&m.y<=(70*j+70))
           fillrectangle(70*i,70*j,70*i+70,70*j+70);
			 }
		}break;
		case WM_RBUTTONUP:return 0;
	
	}
	}
	getch();       //等待按键结束
	closegraph();//关闭窗口
	return 0;
}

  • 2
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值