【发布时间】:2021-03-07 01:51:16
【问题描述】:
我正在制作一个显示您正在按下的键的应用程序,我想知道是否有办法将一些图像小部件覆盖在屏幕顶部,这样即使您处于全屏模式,它们也能保持在顶部.我在 Visual Studio 中使用 WPF。指向教程的链接或下载到示例的链接将大有帮助!
【问题讨论】:
标签: c# wpf visual-studio overlay fullscreen
我正在制作一个显示您正在按下的键的应用程序,我想知道是否有办法将一些图像小部件覆盖在屏幕顶部,这样即使您处于全屏模式,它们也能保持在顶部.我在 Visual Studio 中使用 WPF。指向教程的链接或下载到示例的链接将大有帮助!
【问题讨论】:
标签: c# wpf visual-studio overlay fullscreen
您尚未明确是希望小部件出现在所有窗口之上,还是只显示在您的 WPF 窗口之上。
如果您希望它仅出现在您的窗口上,请考虑使用an adorner。
如果您希望它出现在所有窗口中,请使用this WindowSinker class,它会拦截您窗口的 WM_SETFOCUS 消息并调用 SetWindowPos 来设置 HWND_TOPMOST 标志。
【讨论】:
WindowSinker.WindowExtensions.SetSinker(???, Topmost); 上放置以下内容在我的窗口上使用它,因为问号它要求我提供一个依赖对象。我在里面放什么?
WindowSinker sinker;。最后,在那个窗口的构造函数中我做了sinker = new WindowSinker(this);,然后是sinker.Sink();,然后是通常的InitializeComponent();。
WindowSinker 和 WindowExtensions。