我正在寻找开发一个应用程序,它本质上是一个计时器窗口,它始终显示在任何其他应用程序前面的屏幕上,并且在聚焦其他窗口时永远不会落到后台。一个例子是当我玩全屏游戏时,我希望这个计时器覆盖游戏,当我点击窗口上的计时器按钮时,它不会关闭游戏。
有什么想法可以在 C#/java/C++ 中实现吗?
谢谢
我正在寻找开发一个应用程序,它本质上是一个计时器窗口,它始终显示在任何其他应用程序前面的屏幕上,并且在聚焦其他窗口时永远不会落到后台。一个例子是当我玩全屏游戏时,我希望这个计时器覆盖游戏,当我点击窗口上的计时器按钮时,它不会关闭游戏。
有什么想法可以在 C#/java/C++ 中实现吗?
谢谢
C#:尝试设置窗口(窗体)的 AlwaysOnTop 属性
java:在框架或对话框上调用 setAlwaysOnTop(true)
我认为您想要实现的目标可以通过 C# 中表单的属性TopMost和 Java Window 上的setAlwaysOnTop来实现......
在 Windows 上的 C++ 中,您必须调用SetWindowPos函数并作为参数传递:HWND_TOPMOST属性。
更新
由于您的应用程序处于全屏模式,请尝试使用 Win32 API 函数将您的应用程序设置在前台:SetForegroundWindow。
[System.Runtime.InteropServices.DllImport("user32.dll")]
public static extern bool SetForegroundWindow(IntPtr hWnd);
SetForegroundWindow(this.Handle);
否则,您可以尝试避免使用 Win32 SetForegroundWindow函数,如下所示:
this.TopMost = true;
this.Activate();