我正在为Windows开发一个c ++应用程序.我正在使用win32 API.我有一个非常简单的问题,我无法找到答案.如何打开没有标题栏的窗口(没有控件,图标和标题),并且无法调整大小.
我用于创建窗口的应用程序的一段代码:
hWnd = CreateWindow(szWindowClass, 0, (WS_BORDER ),
0, 0, WINDOW_WIDTH, WINDOW_HEIGHT, NULL, NULL, hInstance, NULL);
Run Code Online (Sandbox Code Playgroud)
更新:
要在c#中执行此操作,您只需定义以下代码:
FormBorderStyle = System.Windows.Forms.FormBorderStyle.SizableToolWindow;
ControlBox = false;
Run Code Online (Sandbox Code Playgroud) 我想要一个没有标题栏但有可调整大小的框架和阴影的窗口.这可以通过删除WS_CAPTION和添加WS_THICKFRAME轻松实现,但是,从Windows 10开始,有一个6px的白色非客户区域.
使用以下代码我创建一个窗口并用黑色绘制所有客户区域,窗口获得左,右和底部6px透明边距,但是上边距是白色.
#ifndef UNICODE
#define UNICODE
#endif
#include <windows.h>
LRESULT CALLBACK WindowProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam);
int WINAPI wWinMain(HINSTANCE hInstance, HINSTANCE, PWSTR pCmdLine, int nCmdShow)
{
// Register the window class.
const wchar_t CLASS_NAME[] = L"Sample Window Class";
WNDCLASS wc = { };
wc.lpfnWndProc = WindowProc;
wc.hInstance = hInstance;
wc.lpszClassName = CLASS_NAME;
RegisterClass(&wc);
// Create the window.
HWND hwnd = CreateWindowEx(
0, // Optional window styles.
CLASS_NAME, // Window class
L"", // Window text
0,
// …Run Code Online (Sandbox Code Playgroud)