c语言基于easyX樱花特效,C++基于easyx图形库实现推箱子游戏

本文实例为大家分享了C++实现推箱子游戏的具体代码,供大家参考,具体内容如下

头文件:

#include

#include

//#include

#include

#include

#include

//播放音乐需要的头文件

#include

#pragma comment(lib,"winmm.lib")

//格子边长

#define SPACE 60

//6.3.1 定义变量

IMAGE png[12];//5张图,定义5个变量,定义一个数组

#define MapMany 6

//枚举方向

enum CH {

right = 1,

left = 2,

up = 3,

down = 4

}ch;

//定义一个全局三维数组

//0表示空地“ ” 1表示墙“■” 2代表目的地“⊙” 3代表人站在空地上“♀” 4代表箱子“□”

//5箱子与目的地重合“◆” 6,人站在目的地上“♀”

//下面定义地图

int map[MapMany][10][10] = {

//图一

{

{ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 },

{ 1, 2, 0, 1, 1, 0, 0, 0, 2, 1 },

{ 1, 0, 0, 1, 1, 0, 0, 0, 0, 1 },

{ 1, 0, 0, 1, 1, 1, 1, 0, 4, 1 },

{ 1, 0, 0, 1, 1, 1, 1, 0, 0, 1 },

{ 1, 0, 0, 1, 1, 1, 0, 0, 0, 1 },

{ 1, 0, 0, 1, 1, 1, 0, 0, 0, 1 },

{ 1, 4, 0, 0, 0, 0, 0, 3, 0, 1 },

{ 1, 0, 0, 0, 0, 0, 0, 0, 0, 1 },

{ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 },

},

//图二

{

{ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 },

{ 1, 0, 1, 2, 0, 0, 0, 4, 0, 1 },

{ 1, 0, 1, 0, 0, 0, 0, 0, 0, 1 },

{ 1, 0, 1, 0, 0, 1, 1, 0, 0, 1 },

{ 1, 0, 1, 0, 0, 1, 1, 0, 0, 1 },

{ 1, 0, 1, 1, 1, 1, 1, 0, 3, 1 },

{ 1, 0, 1, 1, 1, 1, 1, 0, 0, 1 },

{ 1, 0, 0, 0, 0, 0, 0, 0, 0, 1 },

{ 1, 2, 0, 0, 4, 0, 0, 0, 0, 1 },

{ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 },

},

//图三

{

{ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 },

{ 1, 2, 0, 1, 0, 0, 3, 0, 0, 1 },

{ 1, 0, 0, 1, 0, 0, 0, 0, 0, 1 },

{ 1, 0, 0, 1, 1, 1, 1, 0, 0, 1 },

{ 1, 4, 0, 1, 1, 1, 1, 0, 0, 1 },

{ 1, 0, 0, 1, 1, 0, 0, 0, 4, 1 },

{ 1, 0, 0, 1, 0, 0, 0, 0, 0, 1 },

{ 1, 0, 0, 0, 4, 0, 1, 0, 0, 1 },

{ 1, 2, 0, 0, 0, 0, 1, 0, 2, 1 },

{ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 },

},

//图四

{

{ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 },

{ 1, 0, 0, 0, 0, 0, 0, 0, 0, 1 },

{ 1, 0, 0, 0, 0, 0, 0, 0, 0, 1 },

{ 1, 0, 0, 0, 0, 0, 0, 0, 0, 1 },

{ 1, 0, 0, 0, 0, 0, 0, 0, 0, 1 },

{ 1, 0, 0, 0, 0, 0, 0, 0, 0, 1 },

{ 1, 0, 0, 0, 0, 0, 0, 0, 0, 1 },

{ 1, 0, 0, 0, 0, 0, 0, 0, 0, 1 },

{ 1, 0, 0, 0, 0, 0, 0, 0, 0, 1 },

{ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 },

},

//图五

{

{ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 },

{ 1, 0, 0, 0, 0, 0, 0, 0, 0, 1 },

{ 1, 0, 0, 0, 0, 0, 0, 0, 0, 1 },

{ 1, 0, 0, 0, 0, 0, 0, 0, 0, 1 },

{ 1, 0, 0, 0, 0, 0, 0, 0, 0, 1 },

{ 1, 0, 0, 0, 0, 0, 0, 0, 0, 1 },

{ 1, 0, 0, 0, 0, 0, 0, 0, 0, 1 },

{ 1, 0, 0, 0, 0, 0, 0, 0, 0, 1 },

{ 1, 0, 0, 0, 0, 0, 0, 0, 0, 1 },

{ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 },

},

//图六

{

{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },

{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },

{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },

{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },

{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },

{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },

{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },

{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },

{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },

{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },

}

};

//定义当前关卡

int WhatMap = 0;//初始化位第0张地图

void DrawMap(int n);

void initscreen();

void ManUp();

int KbHit();

void ManUp();

void ManRight();

void ManLeft();

void ManDown();

int GameOver();

void drawGame();

CPP文件:

#include"SokoBan.h"

int main()

{

initscreen();

//播放音乐

mciSendString(TEXT("open sun.mp3 alias mysong"), NULL, 0, NULL);

mciSendString(TEXT("play mySong"), NULL, 0, NULL);

while (1)

{

switch (KbHit())

{

case 4:ManUp(); break;

case 2:ManLeft(); break;

case 1:ManRight(); break;

case 3:ManDown(); break;

//case 0:continue;

}

drawGame();

if (GameOver())

{

WhatMap++;

Sleep(1000);

}

if (WhatMap == 3)break;

}

loadimage(&png[7], _T("6.jpg"), 10*SPACE, 10*SPACE, true);

putimage(0, 0, &png[7]);

Sleep(10000);

return 0;

//printf("作者:小豆芽\n时间:2018/12/18\n版权:2862841130@qq.com");

//system("pause");

}

//设置窗口大小

void initscreen()

{

initgraph(10 * SPACE, 10 * SPACE );

//6.3.2 加载图片

//0表示空地“ ” 1表示墙“■” 2代表目的地“⊙” 3代表人站在空地上“♀” 4代表箱子“□”

//5箱子与目的地重合“◆” 6,人站在目的地上“♀”

loadimage(&png[0], _T("0.jpg"), SPACE, SPACE, true);

loadimage(&png[1], _T("1.jpg"), SPACE, SPACE, true);

loadimage(&png[2], _T("2.jpg"), SPACE, SPACE, true);

loadimage(&png[3], _T("3.jpg"), SPACE, SPACE, true);

loadimage(&png[4], _T("4.jpg"), SPACE, SPACE, true);

loadimage(&png[5], _T("5.jpg"), SPACE, SPACE, true);

loadimage(&png[6], _T("3.jpg"), SPACE, SPACE, true);

//以下是windows窗口

//system("mode con cols=20 lines=10"); //cols 代表列 //lines 代表行

// //设置标题

//SetConsoleTitleA("推箱子"); //设置标题

}

//贴图

void drawGame() {

for (int i = 0; i < 10; i++) {//显示一行

for (int j = 0; j < 10; j++) {//显示一个格子

putimage(j*SPACE, i*SPACE, &png[map[WhatMap][i][j]]);

}

}

}

//画出地图

//0表示空地“ ” 1表示墙“■” 2代表目的地“⊙” 3代表人“♀” 4代表箱子“□”

//5箱子与目的地重合“◆” 6,人站在目的地

void DrawMap(int n)

{

system("cls");

for (int j = 0; j < 10; j++)

{

int i;

for (i = 0; i < 10; i++)

{

if (map[WhatMap][i][j] == 0)printf(" ");

if (map[WhatMap][i][j] == 1)printf("■");

if (map[WhatMap][i][j] == 2)printf("⊙");

if (map[WhatMap][i][j] == 3)printf("♀");

if (map[WhatMap][i][j] == 4)printf("□");

if (map[WhatMap][i][j] == 5)printf("◆");

if (map[WhatMap][i][j] == 6)printf("♀");

}

if(i<9)printf("\n");

}

}

//判断按键操作

int KbHit()

{

if (GetAsyncKeyState(VK_UP)&1)return up;

else if (GetAsyncKeyState(VK_DOWN)&1)return down;

else if (GetAsyncKeyState(VK_RIGHT)&1)return right;

else if (GetAsyncKeyState(VK_LEFT)&1)return left;

else return 0;

}

//********************************************人向上移动

void ManUp()

{

//先找到人的位置

int i, j;

for (i = 0; i < 10; i++)

{

int flag = 0;

for (j = 0; j < 10; j++)

if (map[WhatMap][i][j] == 3 || map[WhatMap][i][j] == 6)

{

flag = 1;

break;

}

if (flag)break;

}

//人的位置是map[WhatMap][i][j];

//改变人的方向

//人的位置是空地

if (map[WhatMap][i][j] == 3)

{

//***********人的上面是空地

if (map[WhatMap][i + 1][j] == 0)

{

map[WhatMap][i][j] = 0;

map[WhatMap][i + 1][j] = 3;

}

//************人的上面是目的地

else if (map[WhatMap][i + 1][j] == 2)

{

map[WhatMap][i][j] = 0;

map[WhatMap][i + 1][j] = 6;

}

//*************人的上面是箱子

else if (map[WhatMap][i + 1][j] == 4)

{

//1,***********箱子上面是目的地

if (map[WhatMap][i + 2][j] == 2)

{

map[WhatMap][i][j] = 0;

map[WhatMap][i + 1][j] = 3;

map[WhatMap][i + 2][j] = 5;

}

//2,************箱子上面是空地

else if (map[WhatMap][i + 2][j] == 0)

{

map[WhatMap][i][j] = 0;

map[WhatMap][i + 1][j] = 3;

map[WhatMap][i + 2][j] = 4;

}

//3,*************箱子上面是。。。。。

}

}

//人的位置是目的地

else if (map[WhatMap][i][j] == 6)

{

//***********人的上面是空地

if (map[WhatMap][i + 1][j] == 0)

{

map[WhatMap][i][j] = 2;

map[WhatMap][i + 1][j] = 3;

}

//************人的上面是目的地

else if (map[WhatMap][i + 1][j] == 2)

{

map[WhatMap][i][j] = 2;

map[WhatMap][i + 1][j] = 6;

}

//*************人的上面是箱子

else if (map[WhatMap][i + 1][j] == 4)

{

//1,***********箱子上面是目的地

if (map[WhatMap][i + 2][j] == 2)

{

map[WhatMap][i][j] = 2;

map[WhatMap][i + 1][j] = 3;

map[WhatMap][i + 2][j] = 5;

}

//2,************箱子上面是空地

else if (map[WhatMap][i + 2][j] == 0)

{

map[WhatMap][i][j] = 2;

map[WhatMap][i + 1][j] = 3;

map[WhatMap][i + 2][j] = 4;

}

//3,*************箱子上面是。。。。。

}

}

}

//********************************************人向右移动

void ManRight()

{

//先找到人的位置

int i, j;

for (i = 0; i < 10; i++)

{

int flag = 0;

for (j = 0; j < 10; j++)

if (map[WhatMap][i][j] == 3 || map[WhatMap][i][j] == 6)

{

flag = 1;

break;

}

if (flag)break;

}

//人的位置是map[WhatMap][i][j];

//改变人的方向

//人的位置是空地

if (map[WhatMap][i][j] == 3)

{

//***********人的右面是空地

if (map[WhatMap][i][j+1] == 0)

{

map[WhatMap][i][j] = 0;

map[WhatMap][i][j+1] = 3;

}

//************人的右面是目的地

else if (map[WhatMap][i][j+1] == 2)

{

map[WhatMap][i][j] = 0;

map[WhatMap][i][j+1] = 6;

}

//*************人的右面是箱子

else if (map[WhatMap][i][j+1] == 4)

{

//1,***********箱子右面是目的地

if (map[WhatMap][i][j+2] == 2)

{

map[WhatMap][i][j] = 0;

map[WhatMap][i][j+1] = 3;

map[WhatMap][i][j+2] = 5;

}

//2,************箱子右面是空地

else if (map[WhatMap][i][j+2] == 0)

{

map[WhatMap][i][j] = 0;

map[WhatMap][i][j+1] = 3;

map[WhatMap][i][j+2] = 4;

}

//3,*************箱子右面是。。。。。

}

}

//人的位置是目的地

else if (map[WhatMap][i][j] == 6)

{

//***********人的右面是空地

if (map[WhatMap][i][j+1] == 0)

{

map[WhatMap][i][j] = 2;

map[WhatMap][i][j+1] = 3;

}

//************人的右面是目的地

else if (map[WhatMap][i][j+1] == 2)

{

map[WhatMap][i][j] = 2;

map[WhatMap][i][j+1] = 6;

}

//*************人的右面是箱子

else if (map[WhatMap][i][j+1] == 4)

{

//1,***********箱子右面是目的地

if (map[WhatMap][i][j+2] == 2)

{

map[WhatMap][i][j] = 2;

map[WhatMap][i][j+1] = 3;

map[WhatMap][i][j+2] = 5;

}

//2,************箱子右面是空地

else if (map[WhatMap][i][j+2] == 0)

{

map[WhatMap][i][j] = 2;

map[WhatMap][i][j+1] = 3;

map[WhatMap][i][j+2] = 4;

}

//3,*************箱子右面是。。。。。

}

}

}

//********************************************人向左移动

void ManLeft()

{

//先找到人的位置

int i, j;

for (i = 0; i < 10; i++)

{

int flag = 0;

for (j = 0; j < 10; j++)

if (map[WhatMap][i][j] == 3 || map[WhatMap][i][j] == 6)

{

flag = 1;

break;

}

if (flag)break;

}

//人的位置是map[WhatMap][i][j];

//改变人的方向

//人的位置是空地

if (map[WhatMap][i][j] == 3)

{

//***********人的左面是空地

if (map[WhatMap][i][j-1] == 0)

{

map[WhatMap][i][j] = 0;

map[WhatMap][i][j-1] = 3;

}

//************人的左面是目的地

else if (map[WhatMap][i][j-1] == 2)

{

map[WhatMap][i][j] = 0;

map[WhatMap][i][j-1] = 6;

}

//*************人的左面是箱子

else if (map[WhatMap][i][j-1] == 4)

{

//1,***********箱子左面是目的地

if (map[WhatMap][i][j-2] == 2)

{

map[WhatMap][i][j] = 0;

map[WhatMap][i][j-1] = 3;

map[WhatMap][i][j-2] = 5;

}

//2,************箱子左面是空地

else if (map[WhatMap][i][j-2] == 0)

{

map[WhatMap][i][j] = 0;

map[WhatMap][i][j-1] = 3;

map[WhatMap][i][j-2] = 4;

}

//3,*************箱子左面是。。。。。

}

}

//人的位置是目的地

else if (map[WhatMap][i][j] == 6)

{

//***********人的上面是空地

if (map[WhatMap][i][j-1] == 0)

{

map[WhatMap][i][j] = 2;

map[WhatMap][i][j-1] = 3;

}

//************人的上面是目的地

else if (map[WhatMap][i][j-1] == 2)

{

map[WhatMap][i][j] = 2;

map[WhatMap][i][j-1] = 6;

}

//*************人的上面是箱子

else if (map[WhatMap][i][j-1] == 4)

{

//1,***********箱子上面是目的地

if (map[WhatMap][i][j-2] == 2)

{

map[WhatMap][i][j] = 2;

map[WhatMap][i][j-1] = 3;

map[WhatMap][i][j-2] = 5;

}

//2,************箱子上面是空地

else if (map[WhatMap][i][j-2] == 0)

{

map[WhatMap][i][j] = 2;

map[WhatMap][i][j-1] = 3;

map[WhatMap][i][j-2] = 4;

}

//3,*************箱子上面是。。。。。

}

}

}

//********************************************人向下移动

void ManDown()

{

//先找到人的位置

int i, j;

for (i = 0; i < 10; i++)

{

int flag = 0;

for (j = 0; j < 10; j++)

if (map[WhatMap][i][j] == 3 || map[WhatMap][i][j] == 6)

{

flag = 1;

break;

}

if (flag)break;

}

//人的位置是map[WhatMap][i][j];

//改变人的方向

//人的位置是空地

if (map[WhatMap][i][j] == 3)

{

//***********人的下面是空地

if (map[WhatMap][i - 1][j] == 0)

{

map[WhatMap][i][j] = 0;

map[WhatMap][i - 1][j] = 3;

}

//************人的上面是目的地

else if (map[WhatMap][i - 1][j] == 2)

{

map[WhatMap][i][j] = 0;

map[WhatMap][i - 1][j] = 6;

}

//*************人的上面是箱子

else if (map[WhatMap][i - 1][j] == 4)

{

//1,***********箱子上面是目的地

if (map[WhatMap][i - 2][j] == 2)

{

map[WhatMap][i][j] = 0;

map[WhatMap][i - 1][j] = 3;

map[WhatMap][i - 2][j] = 5;

}

//2,************箱子上面是空地

else if (map[WhatMap][i - 2][j] == 0)

{

map[WhatMap][i][j] = 0;

map[WhatMap][i - 1][j] = 3;

map[WhatMap][i - 2][j] = 4;

}

//3,*************箱子上面是。。。。。

}

}

//人的位置是目的地

else if (map[WhatMap][i][j] == 6)

{

//***********人的上面是空地

if (map[WhatMap][i - 1][j] == 0)

{

map[WhatMap][i][j] = 2;

map[WhatMap][i - 1][j] = 3;

}

//************人的上面是目的地

else if (map[WhatMap][i - 1][j] == 2)

{

map[WhatMap][i][j] = 2;

map[WhatMap][i - 1][j] = 6;

}

//*************人的上面是箱子

else if (map[WhatMap][i - 1][j] == 4)

{

//1,***********箱子上面是目的地

if (map[WhatMap][i - 2][j] == 2)

{

map[WhatMap][i][j] = 2;

map[WhatMap][i - 1][j] = 3;

map[WhatMap][i - 2][j] = 5;

}

//2,************箱子上面是空地

else if (map[WhatMap][i - 2][j] == 0)

{

map[WhatMap][i][j] = 2;

map[WhatMap][i - 1][j] = 3;

map[WhatMap][i - 2][j] = 4;

}

//3,*************箱子上面是。。。。。

}

}

}

//判断游戏是否结束

int GameOver()

{

//统计目的地的个数

int flag = 0;

for (int i = 0; i < 10; i++)

{

for (int j = 0; j < 10; j++)

{

if (map[WhatMap][i][j] == 2)flag++;

}

}

//箱子到达目的地的个数

int count = 0;

for (int i = 0; i < 10; i++)

{

for (int j = 0; j < 10; j++)

{

if (map[WhatMap][i][j] == 4)count++;

}

}

if (count == 0&&flag == 0 )return 1;

else return 0;

}

运行效果:

266bf3113011723bdc35e85aa5cb4d42.png

游戏资源:

1.

c142c4d238e87d39ef812f429734b648.png

2.

781e4423549884d03693818e836cf9aa.png

3.

6866bf2c5b3372e28833314501147945.png

4.

c1c34b8df55863b7540ea56e966489a1.png

5.

b8378ef46be32423ae5132f80f992f1a.png

6.

1fb3d28b4aa73a9a1d592c83dde7ea50.png

结束展示:

a4c73c84613ba009db8c4b1e95e5f86e.png

更多有趣的经典小游戏实现专题,分享给大家:

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
目录回到顶部↑丛书前言 前言 读者须知 第1章 visual c++起点 实例1 mfc框架、文档和视 实例2 创建多文档窗口 实例3 创建对话框窗口 实例4 创建启动窗口 第2章 多窗口界面 实例5 多窗口的单文档界面 实例6 通过菜单改变视图 实例7 通过工具栏改变视图 实例8 多视图窗口数据显示 第3章 实现microsoft风格 实例9 visual studio风格的窗口 实例10 internetexplorer4.0风格的窗口 实例11 outlook风格的窗口 实例12 状态栏中的任务栏 第4章 超文本界面 实例13 创建超级链接界面 . 实例14 显示模式html对话框窗口 实例15 超文本浏览器 实例16 数字化时钟 第5章 各种特效窗口 实例17 创建不规则窗口 实例18 操作dib位图窗口 实例19 位图转换窗口 实例20 渐变的窗口 第6章 对话框界面 实例21 可扩展对话柜 实例22 位图预览对话框 实例23 显示目录树对话框 实例24 透明对话框 第7章 菜单状态操作 实例25 漂亮的图文菜单 实例26 随文档动态改变菜单 实例27 启用和禁止菜单命令 实例28 复选菜单命令 第8章 自绘制菜单 实例29 自绘制图标菜单 实例30 visualstudio外观的工具栏 实例31 对话框窗口中的菜单 实例32 弹出位图菜单 第9章 动画按钮 实例33 avi动画按钮 实例34 实现图标按钮 实例35 实现一组图标按钮 实例36 绘制dib动画按钮 第10章 多彩按钮 实例37 位图按钮 实例38 带颜色的按钮 实例39 对鼠标敏感的按钮 实例40 可弹出菜单的按钮 第11章 图文按钮风格大全 实例41 各种图文按钮风格 实例42 图标浮动按钮 实例43 图钉按钮 实例44 计数器按钮 第12章 不规则按钮大全 实例45 各种不规则按钮 实例46 环形按钮 实例47 三角形按钮 实例48 椭圆形按钮 第13章 掩膜编辑框 实例49 ip地址输入编辑框 实例50 下拉列表控件中的编辑柜 实例51 掩膜输入编辑框 实例52 数字输入控制编辑框 第14章 编辑框和树视控件 实例53 破解密码框内容 实例54 16进制编辑输入框 实例55 树型注释 实例56 目录树结构 第15章 组合框集锦 实例57 多列显示的组合框 实例58 自动完成功能的组合框 实例59 浮动的组合框 实例60 浮动的彩色组合框 第16章 操作系统的组合框 实例61 “快照”组合框 实例62 多列属性组合框 实例仍 使用组合框选择颜色 实例64 使用组合框选择字体 第17章 组合框和列表框 实例65 具有历史记录的组合框 实例66 系统图像列表 实例67 excel表格视图 实例68 浏览数据库的列表框 第18章 属性页初级篇 实例69 改变属性页的按钮区 实例70 完整的属性页应用程序 实例71 嵌入对话框中的属性页 实例72 实现wizard 第19章 属性页及标签页高级篇 实例73 在对话框中的属性页 实例74 实现标签下标式的视图切换 实例75 属性列表控件 实例76 标签列表控件 第20章 工具栏集锦 实例77 具有下拉按钮的工具栏 实例78 工具栏中的列表框 实例79 各种颜色和大小的工具栏 实例80 气球式提示窗口 第21章 状态栏初级篇 实例81 改变状态栏的状态格 实例82 进度条中的文字 实例83 带声音的提示条 实例84 3d向量控件 第22章 状态栏高级篇 实例85 丰富的状态栏风格 实例86 使用动画控件 实例87 使用日历控件 实例88 使用柱状图控件 第23章 系统操作之一 实例89 方便的日历托盘 实例90 列举系统字体 实例91 实现注册表功能 实例92 检测windows版本号 第24章 系统操作之二 实例93 动画显示的托盘 实例94 浮动窗口 实例95 获得系统硬件信息 第25章 系统操作之三 实例96 修改系统[开始]菜单 实例97 检测系统中的api包 第26章 系统操作之四 实例98 建立自己的任务栏 实例99 隐藏任务条中的应用程序 实例100 检测cpu的时钟 附录a 窗口类与窗口样式 a.1 窗口类结构 a.2 窗口类样式 a.3 窗口样式分组 附录b mfc中windows公共控件的通知消息 b.1 windows公共控件的通知 b.2 通知消息结构 b.3 通知过程概述 b.4 更好地处理通知的方案 b.5 用0n_n0tify_range指定通知域 附录c visual c++开发实用技巧
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值