我正在尝试将图像设置为win32应用程序主窗口的背景,我正在尝试在主函数wcex.hbrBackground = (HBRUSH)(COLOR_WINDOW);
中设置
WNDCLASSEX wcex;
wcex.cbSize = sizeof(WNDCLASSEX);
wcex.style = CS_HREDRAW | CS_VREDRAW;
wcex.lpfnWndProc = WndProc;
wcex.cbClsExtra = 0;
wcex.cbWndExtra = 0;
wcex.hInstance = hInstance;
wcex.hIcon = LoadIcon(hInstance, MAKEINTRESOURCE(IDI_APPLICATION));
wcex.hCursor = LoadCursor(NULL, IDC_ARROW);
wcex.hbrBackground = (HBRUSH)(COLOR_WINDOW);
但我找不到正确的语法??
答案 0 :(得分:1)
wcex.hbrBackground = (HBRUSH)(COLOR_WINDOW + 1);
是正确的语法。要将图像设置为窗口背景,您可以使用:
hbr=CreatePatternBrush(LoadBitmap(hInstance,MAKEINTRESOURCE(IDB_BGROUND)));
wcex.hbrBackground = bhr
如果您想控制绘图,可以处理WM_ERASEBKGND
并在此函数中绘制图像,然后为DefWindowProc
返回非零以忽略此消息。