| yuqiubo 侠客文章 |
|---|
GAMEBALL!
首先这是一个win32应用程序……
我的朋友-你
必须有C++编译器才有可能编译出来……
对于Window程序设计不太熟悉的同学可能有点困难……
我感觉吧~你还需要熟悉VC++才好呢!
闲话不多说!
下面是正文!-源文件,头文件,资源文件 及 所需位图
// main.cpp 保存为 main.cpp 文件
INT_PTR CALLBACK DialogProc( HWND hwndDlg,UINT uMsg,WPARAM wParam,LPARAM lParam); // 关于对话框回调函数声明LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM);//窗口过程函数声明static HINSTANCE hInst; // 本程序实例句柄
int WINAPI WinMain( HINSTANCE hInstance,
HINSTANCE hPrevInstance,LPSTR lpCmdLine,int nCmdShow){hInst = hInstance; // 本程序实例句柄赋值static TCHAR szClassName[] = TEXT("hello!"); // 本实例注册类名
WNDCLASS wndclass;
wndclass.cbClsExtra = NULL;
wndclass.cbWndExtra = NULL;wndclass.hbrBackground = (HBRUSH)GetStockObject(BLACK_BRUSH); // 黑色背景wndclass.hCursor = LoadCursor(NULL,IDC_ARROW);wndclass.hIcon = LoadIcon(hInstance,MAKEINTRESOURCE(IDI_ICON1)); // 自定义图标wndclass.hInstance = hInstance;wndclass.lpfnWndProc= WndProc; // 回调函数wndclass.lpszClassName = szClassName;wndclass.lpszMenuName = NULL;wndclass.style = CS_HREDRAW | CS_VREDRAW;if(!RegisterClass(&wndclass))
{MessageBox(NULL,TEXT("注册窗口类失败!"),TEXT("注册窗口类失败!"),MB_OK);return false;} // 提示信息HWND hwnd; // 窗口句柄
HMENU hMenu; // 菜单句柄
hMenu = LoadMenu(hInstance,MAKEINTRESOURCE(IDR_MENU1));hwnd = CreateWindow(szClassName,
TEXT("HELLO"),WS_OVERLAPPEDWINDOW,300,200,800,600,NULL,hMenu,hInstance,NULL); // 创建窗口if(!hwnd)
{MessageBox(NULL,TEXT("创建窗口失败!"),TEXT("创建窗口失败!"),MB_OK);return false;} // 提示信息ShowWindow(hwnd, nCmdShow); // 显示窗口
UpdateWindow(hwnd); // 更新窗口MSG msg;
while (GetMessage(&msg, NULL, 0, 0)){TranslateMessage (&msg) ;DispatchMessage (&msg) ;} // 消息循环return msg.wParam ;
}// 窗口过程函数定义
LRESULT CALLBACK WndProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam){static int x=-BALL_BMP_SIZE*1/3, // 小球的左上角横坐标
y=-BALL_BMP_SIZE*1/3, // 小球的左上角纵坐标xstep=BALL_X_MOVE, // 小球的水平运动速度ystep=BALL_Y_MOVE; // 小球的垂直运动速度//**********************************************************************
//运用 随机数 来 产生 篮筐 的 存在外置 使 每次运行 篮筐的位置 不同srand((unsigned)time(NULL)); //随机种子数,需要头文件 time.h
static int random=rand(); //随机数 需要头文件 stdlib.h//**********************************************************************HDC hdc;PAINTSTRUCT ps;RECT rect, // 客户区的矩形区域rectangle, // 篮筐的矩形区域,用来重绘客户区ballrect; // 小球的矩形区域,用来重绘客户区| 标题 | 作者 | 发布时间 |
|---|