VS2015 C++ win32 更改static文本字体和文本背景
LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam){
PAINTSTRUCT ps;
HDC hdcWnd;
HDC hdcStatic;
static HFONT hFont; //逻辑字体
static HWND hStatic; //静态文本框控件
static HBRUSH hBrush; //画刷
switch (message){
case WM_CREATE:
//创建画刷
hBrush = CreateSolidBrush( RGB(0x41, 0x96, 0x4F) );
//创建逻辑字体
hFont = CreateFont(-14/*高*/, -7/*宽*/, 0, 0, 700 /*700表示粗体*/,
FALSE/*斜体?*/, FALSE/*下划线?*/, FALSE/*删除线?*/,DEFAULT_CHARSET,
OUT_CHARACTER_PRECIS, CLIP_CHARACTER_PRECIS, DEFAULT_QUALITY,
FF_DONTCARE, TEXT("微软雅黑")
);
//创建静态文本框控件
hStatic = CreateWindow(TEXT("static"), TEXT("欢迎来到C语言中文网!"),
WS_CHILD | WS_VISIBLE | SS_CENTERIMAGE | SS_CENTER,
20 /*x坐标*/, 20 /*y坐标*/, 240 /*宽度*/, 60 /*高度*/,
hWnd /*父窗口句柄*/, (HMENU)1 /*控件ID*/, hInst /*当前程序实例句柄*/, NULL
);
//设置控件的字体
SendMessage(hStatic, WM_SETFONT, (WPARAM)hFont, NULL);
break;
case WM_CTLCOLORSTATIC:
hdcStatic = (HDC)wParam;
SetTextColor( hdcStatic, RGB(255, 255, 255) ); //白色
SetBkColor( hdcStatic, RGB(0x41, 0x96, 0x4F) ); //翠绿色
return (INT_PTR)hBrush;
case WM_PAINT:
hdcWnd = BeginPaint(hWnd, &ps);
// TODO: 在此添加任意绘图代码...
EndPaint(hWnd, &ps);
break;
case WM_DESTROY:
DeleteObject(hBrush);
DeleteObject(hFont);
PostQuitMessage(0);
break;
default:
return DefWindowProc(hWnd, message, wParam, lParam);
}
return 0;
}