C/C++游戏之旅(三)————键盘控制图形移动之游戏主框架

本文介绍了如何使用C/C++在Windows环境下创建一个基础游戏框架,通过键盘事件响应实现小圆的上下左右移动。文章提供源码,并强调此框架将作为后续DirectX学习的基础。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本文中我们将尝试着控制窗口中的小圆跟随者上下左右键的操作来移动,会涉及键盘事件响应,游戏帧数控制等一些类问题,废话少说,先贴上源码:

#include "main2.h"
#include "MENUs.h"
#define WIN32_LEAN_AND_MEAN
#include <stdlib.h>
#include <windows.h>
#include <windowsx.h>
#include <stdio.h>
#include <math.h>
#include <mmsystem.h>
#define WINDOW_CLASS_NAME "MY_CLASS"
#define WINDOW_WIDTH GetSystemMetrics(SM_CXFULLSCREEN)
#define WINDOW_HEIGHT GetSystemMetrics(SM_CYFULLSCREEN)

// 图形的移动距离
int xv = 50;
int yv = 50;
// 图形的开始坐标
int ball_x = WINDOW_WIDTH/2;
int ball_y = WINDOW_HEIGHT/2;
int ball_x_old=WINDOW_WIDTH/2;
int ball_y_old=WINDOW_HEIGHT/2;

HWND hwnd=NULL;
HPEN black_pen=NULL;
HBRUSH black_brush=NULL;
HPEN white_pen=NULL;
HBRUSH green_brush=NULL;
LRESULT CALLBACK WindowProc(HWND hwnd,
UINT msg,
WPARAM wparam,
LPARAM lparam)
{
PAINTSTRUCT ps;//图形绘制结构体
HDC hdc=NULL;//句柄
switch(msg)
{
case WM_CREATE: //窗口创建时
{
return(0);
} break;

case WM_PAINT: //窗口重绘时
{
hdc = BeginPaint(hwnd,&ps); //开始绘制
EndPaint(hwnd,&ps);//结束绘制
return(0);
} br
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值