TranslucentTB-release源码
API:SetWindowCompositionAttribute在win11 21h2之后就无法透明任务栏了,而TranslucentTB可以实现,下载了TranslucentTB源码,看不懂,来个懂的大佬解释一下TranslucentTB在22h2之后的版本是怎么实现的?来个看的懂源码的解释一下 实现原理 本帖最后由 Patches 于 2023-8-16 00:17 编辑
看错 我还以为你是问更改透明的方法
实现方法不太清楚 我是直接注册表修改的
我只会用,不会看 我用TranslucentTB无法实现win1122h2版本任务栏透明{:1_923:},求大佬们教教 推荐使用StartAllBack 新版的可以支持11了,搜一下最新的 本帖最后由 一只小凡凡 于 2023-8-16 11:40 编辑
通过WindowsAPI SendNotifyMessageW方法向全部窗口发送ImmersiveColorSet消息即可。
微软链接:https://learn.microsoft.com/zh-c ... inuser-sendmessagew
C#实现方法如下:
private static extern bool SendNotifyMessage(uint hWnd, uint Msg, IntPtr wPARAM, IntPtr lPARAM);
const uint HWND_BROADCAST = 0xffff;
const uint WM_SETTINGCHANGE = 0x001A;
SendNotifyMessage(HWND_BROADCAST, WM_SETTINGCHANGE, new IntPtr(0), Marshal.StringToHGlobalAnsi("ImmersiveColorSet"));
一只小凡凡 发表于 2023-8-16 11:21
通过WindowsAPI SendNotifyMessageW方法向全部窗口发送ImmersiveColorSet消息即可。
微软链接:https:// ...
大佬来了 感谢指导容我使用易语言研究一番先 本帖最后由 一只小凡凡 于 2023-8-16 11:28 编辑
首先修改注册表,然后全部窗口发送上述的消息,我在C#中用的SendNotifyMessage方法 ,C++可以使用SendNotifyMessageW方法
SendNotifyMessageW(HWND_BROADCAST, WM_SETTINGCHANGE,0,L"ImmersiveColorSet")
页:
[1]
2