#include <windows.h>
#include <string.h>
#include <stdlib.h>
#define KeyDown(vk_code) ((GetAsyncKeyState(vk_code) & 0x8000) ? 1 : 0)
#define Msg(info) MessageBox(NULL,info,"message",MB_OK)
#define ErrorMsg(info) MessageBox(NULL,info,"error",MB_ICONSTOP)
#define TEXTOUT(dc,x,y,str) TextOut(dc,x,y,str,strlen(str))
#include <dwmapi.h>
#pragma comment (lib , "dwmapi.lib")
const char * WND_CLASS = "unknown_window_class";
const char * WND_TITLE = "untitled";
LRESULT CALLBACK MsgProc(HWND hwnd, UINT msg, WPARAM wparam, LPARAM lparam)
{
switch(msg)
{
case WM_CREATE:
{
BOOL bDwm;
DwmIsCompositionEnabled (&bDwm );
if(bDwm )
{
MARGINS mrg = {0, 200, 0, 40};
DwmExtendFrameIntoClientArea (hwnd , &mrg );
//SetBackgroundColor(RGB(0, 0, 0));
}
break;
}
case WM_DESTROY:
PostQuitMessage(0);
break;
default:
break;
}
return DefWindowProc(hwnd, msg, wparam, lparam);
}
int WINAPI WinMain(HINSTANCE hinst, HINSTANCE hprevinst, LPSTR cmdline, INT show)
{
WNDCLASS wc;
wc.style = CS_CLASSDC;
wc.lpfnWndProc = MsgProc;
wc.cbClsExtra = 0;
wc.cbWndExtra = 0;
wc.hInstance = hinst;
wc.hIcon = LoadIcon(0, IDC_APPSTARTING);
wc.hbrBackground = (HBRUSH)GetStockObject(BLACK_BRUSH);
wc.hCursor = LoadCursor(0, IDC_ARROW);
wc.lpszClassName = WND_CLASS;
wc.lpszMenuName = NULL;
if( ! RegisterClass(&wc) )
return 0;
HWND hwnd = CreateWindow(WND_CLASS, WND_TITLE, WS_OVERLAPPEDWINDOW,
CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT,
NULL, NULL, wc.hInstance, NULL);
if(!hwnd)
return 0;
ShowWindow(hwnd, SW_SHOWNORMAL);
UpdateWindow(hwnd);
MSG msg={0};
while(msg.message != WM_QUIT)
{
if(PeekMessage(&msg, 0, 0, 0, PM_REMOVE))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
void AppLoop();
}
UnregisterClass(WND_CLASS, wc.hInstance);
return 0;
}
VC玻璃特效窗口
最新推荐文章于 2019-01-18 17:25:50 发布