限制辅助监视器中的窗口最大大小

问题描述 投票:1回答:1

我有一个多显示器设置。当辅助监视器上的窗口最大化时,我需要限制最大大小和位置。

在MSDN中,MINMAXINFO的文档提到了以下内容:

对于具有多个监视器的系统,ptMaxSize和ptMaxPosition成员描述主监视器上窗口的最大化大小和位置,即使窗口最终最大化到辅助监视器上也是如此。在这种情况下,窗口管理器会调整这些值以补偿主监视器和显示窗口的监视器之间的差异。因此,如果用户不接触ptMaxSize,则监视器上的窗口大于主监视器的窗口最大化到较大监视器的大小。

所以,如果SetWindowPosOnSysCommand,我尝试在nIdSC_MAXIMIZE限制。当用户点击最大化按钮/双击标题栏时,它可以工作。

但是,当用户使用Win +向上箭头键或将窗口移动到监视器顶部以最大化时,我无法处理最大化限制。

那么,是否有任何共同的地方来处理我的所有场景?

接收WM_GETMINMAXINFO消息有什么办法吗?

c++ mfc window
1个回答
© www.soinside.com 2019 - 2024. All rights reserved.