windows - 检索最大化最小化窗口的窗口位置

标签 windows winapi

考虑这种情况:

  • 在多显示器系统上,
  • 一个应用程序被最大化,然后被最小化,
  • 在我的应用程序中,我有上述应用程序主窗口的 HWND

现在,我如何确定窗口从最小化状态恢复时将显示在哪个显示器上? GetWindowRect 和 GetWindowInfo 结果为负值,显然所有监视器都相同。 GetWindowPlacement 在 rcNormalPosition 中给出了很好的值,但这些是应用程序在未最大化时返回到的坐标,可能部分或全部位于另一台监视器上。

最佳答案

尝试使用 MonitorFromRect 函数和 rcNormalPositionMONITOR_DEFAULTTONEAREST 标志。之后 - 调用 GetMonitorInfo 以确定工作监控区域。

关于windows - 检索最大化最小化窗口的窗口位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11587721/

相关文章:

windows - 崩溃转储意味着在顺序指令之间更改了寄存器值

linux - 在同一台 PC 上使用 Virtualbox 的 Windows 和 Linux 应用程序之间的 ActiveMq 消息传递不起作用

c - mongo_client() 失败并出现错误 MONGO_CONN_ADDR_FAIL

python - 在 Docker 容器中运行 Windows Server Core

c# - 编写 Windows 文件管理器应用程序的最佳编程语言

c++ - 在 QT for Windows 中使用 Win32 API

windows - Elasticsearch 安装问题 : System has not been booted with systemd as init system (PID 1). 无法运行

windows - 将Win32封装在一个类中——在CreateWindow中传递类指针

c++ - CreateNamedPipe 导致 ERROR_ACCESS_DENIED?

c++ - Windows 中的 _chdir 和 SetCurrentDirectory 有什么区别?