gpt4 book ai didi

c# - 如何让类似菜单的表单停留在屏幕上,位于所有其他应用程序之上?

转载 作者:可可西里 更新时间:2023-11-01 10:18:16 26 4
gpt4 key购买 nike

我想在 C# 中制作一个像窗口任务栏一样的菜单栏,但我想知道如何让表单停留在屏幕顶部,而其他程序不会像窗口任务栏和鼠标悬停时那样覆盖它在图标上,它将显示如下形式:

Example Image

我是这样写的: Here

这就是我想要的here

最佳答案

Windows 有一个工具,允许您基本上创建停靠在屏幕一侧并始终可见的伪任务栏。很久很久以前,Office 团队(可能 Office 团队公开记录?)使用它来创建桌面工具栏。

无论如何,它们被称为应用程序桌面工具栏(或“AppBars”),文档是here .要注册一个,您可以使用 ABM_NEW message 调用 SHAppBarMessage 函数.链接文档中提供了完整的示例代码,不幸的是它是用 C++ 编写的。

要在 C# 应用程序中使用它,您必须执行 P/Invoke。据我所知,它没有被 .NET Framework 包装在任何地方,可能是因为它再也没有被任何人使用过。 This CodeProject article似乎写出了必要的 P/Invoke 定义。我不能保证它们的正确性,但有了文档,作为示例,您应该能够制作一个工作演示。

还有另一篇 CodeProject 文章 here ,由 Arik Poznanski 编写,是关于在 C# 中使用 shell 功能的系列文章的一部分。它看起来更彻底,可能超出您的需要。

关于c# - 如何让类似菜单的表单停留在屏幕上,位于所有其他应用程序之上?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35698629/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com