Magic_Game/Easy2D/Win/winbase.cpp

43 lines
839 B
C++

#include "winbase.h"
#include "..\emacros.h"
HWND m_hwnd = nullptr;
ID2D1Factory * m_pDirect2dFactory = nullptr;
ID2D1HwndRenderTarget * m_pRenderTarget = nullptr;
HWND &GetHWnd()
{
return m_hwnd;
}
ID2D1Factory * &GetFactory()
{
return m_pDirect2dFactory;
}
ID2D1HwndRenderTarget * &GetRenderTarget()
{
return m_pRenderTarget;
}
void WindowCenter(HWND hWnd)
{
// 获取屏幕分辨率
int screenWidth = GetSystemMetrics(SM_CXSCREEN);
int screenHeight = GetSystemMetrics(SM_CYSCREEN);
// 获取窗口大小
tagRECT rcWindow;
GetWindowRect(hWnd, &rcWindow);
// 设置窗口在屏幕居中
SetWindowPos(
hWnd,
HWND_TOP,
(screenWidth - (rcWindow.left - rcWindow.right)) / 2,
(screenHeight - (rcWindow.top - rcWindow.bottom)) / 2,
(rcWindow.left - rcWindow.right),
(rcWindow.top - rcWindow.bottom),
SWP_SHOWWINDOW | SWP_NOSIZE
);
}