我试图找出为什么我的应用程序有一个很小的像素边框。
我的理解是WS_POPUP
应该解决问题;
DWORD wndExStyle = WS_EX_OVERLAPPEDWINDOW;
DWORD wndStyle = WS_POPUP | WS_SYSMENU;
g_hWnd = CreateWindowEx(wndExStyle, wcl.lpszClassName, L"junk",
wndStyle, 0, 0, 0, 0, 0, 0, wcl.hInstance, 0);
//Somewhere later
pfd.dwFlags = PFD_DRAW_TO_WINDOW | PFD_SUPPORT_OPENGL | PFD_DOUBLEBUFFER;
wglCreateContextAttribsARB(g_hDC, 0, attribList);
//Finally
ShowWindow(g_hWnd, SW_MAXIMIZE);
UpdateWindow(g_hWnd);
编辑1: 删除了WS_BORDER
答案 0 :(得分:3)
该边界是由使用WS_EX_OVERLAPPEDWINDOW
引起的。 WS_EX_OVERLAPPEDWINDOW
被定义为WS_EX_WINDOWEDGE | WS_EX_CLIENTEDGE
的事实清楚地说明了发生了什么。
删除该扩展样式,边框消失。
答案 1 :(得分:2)
在样式中包含WS_BORDER会导致将薄边框添加到窗口中。从风格中删除它。