DX12窗口

#include<Windows.h>

#define WINDOWTITLE L"致我们永不熄灭的游戏开发梦想~"
#define WINDOW_WIDTH 800
#define WINDOW_HEIGHT 600
//----------------begin-----------------
float g_posX = 0;
float g_posY = 0;

LRESULT CALLBACK WndProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
{
switch (message)
{
case WM_KEYDOWN:
if (wParam == VK_ESCAPE)
DestroyWindow(hwnd);
else if (wParam == VK_LEFT)
g_posX -= 1.0f;
else if (wParam == VK_RIGHT)
g_posX += 1.0f;
break;
default:
return DefWindowProc(hwnd, message, wParam, lParam);
}
return 0;
}
//----------------end-------------------

int WINAPI WinMain(
In HINSTANCE hInstance,
In_opt HINSTANCE hPrevInstance,
In LPSTR lpCmdLine,
In int nCmdShow)
{

WNDCLASSEX wndClass = { 0 };
wndClass.cbSize = sizeof(WNDCLASSEX);
wndClass.style = CS_HREDRAW | CS_VREDRAW;

//----------------begin-----------------
wndClass.lpfnWndProc = WndProc;
//----------------end-------------------
wndClass.hInstance = hInstance;
wndClass.cbClsExtra = 0;
wndClass.cbWndExtra = 0;
wndClass.hIcon = nullptr;
wndClass.hCursor = nullptr;
wndClass.hbrBackground = nullptr;
wndClass.lpszMenuName = nullptr;
wndClass.lpszClassName = L"ForTheDreamOfGameDevelop";

if (!RegisterClassEx(&wndClass))
{
	MessageBox(0, L"RegisterClass Failed.", 0, 0);
	return false;
}


HWND hwnd = CreateWindow(L"ForTheDreamOfGameDevelop", WINDOWTITLE,
	WS_OVERLAPPEDWINDOW, CW_USEDEFAULT, CW_USEDEFAULT, WINDOW_WIDTH,
	WINDOW_HEIGHT, NULL, NULL, hInstance, NULL);

if (!hwnd)
{
	MessageBox(0, L"CreateWindow Failed.", 0, 0);
	return false;
}


MoveWindow(hwnd, 250, 80, WINDOW_WIDTH, WINDOW_HEIGHT, true); 
ShowWindow(hwnd, nCmdShow);
UpdateWindow(hwnd);

//----------------begin-----------------
g_posX = 400.0f;
g_posY = 1.0f;

MSG msg = { 0 };
while (msg.message != WM_QUIT)
{
	if (PeekMessage(&msg, 0, 0, 0, PM_REMOVE)) 
	{
		TranslateMessage(&msg); 
		DispatchMessage(&msg); 
	}
	else 
	{
		g_posY += 0.001f;
		HDC hdc = GetDC(hwnd);
		TextOut(hdc, g_posX, g_posY, L"hello", 5);
		ReleaseDC(hwnd, hdc);
	}
}

//----------------end-------------------
return 0;
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值