winapi创建不能改变大小的窗口

HWND hWnd = CreateWindow(
"myWindowClass", //窗口类的名字
"my first window", //窗口标题
// WS_OVERtAPPEDWINDOW, //样式
WS_EX_LAYERED |WS_OVERLAPPED|WS_CAPTION|WS_SYSMENU|WS_MINIMIZEBOX,
//|WS_MAXIMIZEBOX|WS_THICKFRAME|
0, 0, 500, 500, //左上角坐标,宽高
NULL, //父窗口
NULL, //菜单
wndclass.hInstance, //实例
NULL); //附加参数

第三项的风格使用WS_EX_LAYERED |WS_OVERLAPPED|WS_CAPTION|WS_SYSMENU|WS_MINIMIZEBOX的组合

把WS_MAXIMIZEBOX|WS_THICKFRAME去除即可

转载于:https://www.cnblogs.com/pojdd/p/8678701.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要在C++中创建一个透明窗口,可以使用Win32 API中的SetLayeredWindowAttributes函数。以下是一个简单的示例代码: ```c++ #include <windows.h> LRESULT CALLBACK WndProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam); int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow) { // Register the window class const char CLASS_NAME[] = "Transparent Window Class"; WNDCLASS wc = { }; wc.lpfnWndProc = WndProc; wc.hInstance = hInstance; wc.lpszClassName = CLASS_NAME; RegisterClass(&wc); // Create the window HWND hwnd = CreateWindowEx( WS_EX_LAYERED | WS_EX_TRANSPARENT | WS_EX_TOPMOST, CLASS_NAME, "Transparent Window", WS_POPUP, 0, 0, 400, 400, NULL, NULL, hInstance, NULL ); SetLayeredWindowAttributes(hwnd, 0, 255, LWA_ALPHA); // Set the window to be fully transparent ShowWindow(hwnd, nCmdShow); // Run the message loop MSG msg = { }; while(GetMessage(&msg, NULL, 0, 0)) { TranslateMessage(&msg); DispatchMessage(&msg); } return 0; } LRESULT CALLBACK WndProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam) { switch(message) { case WM_DESTROY: PostQuitMessage(0); break; default: return DefWindowProc(hwnd, message, wParam, lParam); } return 0; } ``` 在这个示例中,我们创建了一个名为"Transparent Window Class"的窗口类,并使用CreateWindowEx函数创建了一个使用WS_EX_LAYERED、WS_EX_TRANSPARENT和WS_EX_TOPMOST风格的窗口。然后,我们使用SetLayeredWindowAttributes函数将窗口设置为完全透明。 这个示例只是一个最基本的例子,你可以根据自己的需要来修改窗口大小、位置、颜色等属性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值