首页 > 解决方案 > 在外部应用程序中显示一个弹出窗口

问题描述

我正在开发一个应用程序,如果我按下组合键会在另一个外部应用程序的形式内显示一个弹出窗口,我的意思是类似于“Windows 游戏菜单”,但我不知道如何在其中显示弹出窗口外部应用程序。我给你留了一张图片,让你明白我的意思是弹出窗口。对不起我的英语,但我不会说话。提前致谢

图片

标签: vb.net

解决方案


如果无法访问其代码或不知道是否已设置队列消息传递命令来执行此操作,则您无法控制另一个应用程序的一个应用程序表单。可以将应用程序的窗口编程为显示在任何其他窗口上,这可能不适用于 Directx - OpenGL 全区域,即当您正在玩使用相同功能的视频游戏时,因为最后一个是获胜。在这种情况下,您的弹出窗口几乎不可见,但考虑到标准表单应用程序,您可以通过使用带有 HWND_TOPMOST 标志的 userd32.dll 方法“SetWindowPos”使其停止。您首先需要检测应用程序窗口的位置,或者如果它是全屏窗口,您可以简单地检测屏幕的大小并考虑将其放置在中心,

有关 SetWindowPos 的详细信息,它位于 windows 基础 dll 中,但可以从下面的 .net 调用:

https://docs.microsoft.com/en-us/windows/desktop/api/winuser/nf-winuser-setwindowpos 使用窗口句柄使窗口位于最顶层


推荐阅读