课程设计一共两个星期,扫雷要图形界面和鼠标,前一个星期基本啥也没看,合计学习下传说中的api啊~~MFC啊~~~结果都木有成功……
后来发现了easyX……好东西啊!(其实就是把TC的图形库graphics转到了vc中)……
书面文件一律瞎编……
上代码:
#####################################################################################################################
/
#include<graphics.h> //画图头文件
#include<conio.h> //输入输出头文件
#define USER_LBUTTONDOWN 101 //宏定义鼠标左键
#define USER_RBUTTONDOWN 102 //宏定义鼠标右键
#define USER_MBUTTONDOWN 103 //宏定义鼠标滑轮
#pragma comment(lib,"Winmm.lib") //载入鼠标文件
#include<math.h> //数学函数生成随机数
#include<memory.h> //数组初始化
int a[50][50]; //数组雷
#include<time.h> //计时
#include<stdio.h> //_stprintf函数头文件
#include<string.h> //字符串头文件
/
//全局变量///
time_t first, second;
TCHAR m_time[33];
int flag=0;
int shengyu;
int high,wide,leishu;
float n,mn,p,q,yy;
int biaoji;
char shenglei[5];
FILE *fp;
int nandu;
struct besttime
{
char name[7];
float time;
char t[5];
}zuih[4];
/
/
int DispatchMessage(MOUSEMSG m, int opt); //鼠标信息处理
void chuangkzh(); //窗口转换过程
int GetMessage(MOUSEMSG m); //获取鼠标信息
void kaishi(); //游戏开始界面
void kaishi2(); //中级界面开始
void kaishi3(); //高级界面开始
int chushi(); //游戏初始化菜单
int saolei(); //扫雷鼠标执行函数
int DispatchMessage2(MOUSEMSG m, int opt); //游戏中鼠标处理
int saolz(MOUSEMSG m); //扫雷中操作
void bulei(); //布雷函数
void panduan(); //判断是否为雷
int nanduxuanxiang(); //难度选项
int DispatchMessage3(MOUSEMSG m, int opt); //鼠标信息处理(难度选项)
int zerodg(int x,int y); //zero递归函数
void zuigaofen(); //最高分鼠标处理
//
//
//
//主函数
void main()
{
FILE *fp;
int duru=0;
fp=fopen("best.dat","rb+");
for(int i=0;i<4;i++)
if(fread(&zuih[i],sizeof(besttime),1,fp)!=1&&duru!=1)
{
duru=1;
printf("file read error!\n");
}
else
continue;
fclose(fp);
if(duru!=1)
{
initgraph(640,480);
chushi();
int opt,end=0;
MOUSEMSG m;
while(end!=1)
{
m = GetMouseMsg();
opt = GetMessage(m);
end=DispatchMessage(m, opt);
}
setfont(80,0,"黑体");
for(int i=0;i<20;i++)
{
setcolor(WHITE);
outtextxy(150,200,"再见");
Sleep(25);
setcolor(BLACK);
outtextxy(150,200,"再见");
Sleep(25);
}
mciSendString("stop mymusic", NULL, 0, NULL);
mciSendString("close mymusic", NULL, 0, NULL);
cleardevice();
closegraph();
}
}
///
//主菜单,选择难度
int chushi()
{
initgraph(640,480);
HCURSOR hcur = (HCURSOR)LoadImage(NULL, "c:\\鼠标.cur", IMAGE_CURSOR, 0, 0, LR_LOADFROMFILE);
HWND hwnd = GetHWnd(); // 获取绘图窗口句柄
SetClassLong(hwnd, GCL_HCURSOR, (long)hcur); // 设置窗口类的鼠标样式
setcolor(GREEN);
setfont(80,0,"黑体");
outtextxy(200,100,"扫 雷");
setfont(