gpt4 book ai didi

c++ - 使用 MFC 在 2 个监视器上扩展 GUI

转载 作者:行者123 更新时间:2023-11-28 06:18:39 30 4
gpt4 key购买 nike

我有三台屏幕尺寸不同的显示器。我正在使用 C++ 中的 MFC 编写一个 GUI,以将 GUI 从 3 个监视器扩展到 2 个监视器。这意味着我有 3 个显示器,但 GUI 仅在 2 个显示器中显示,其余显示器用于其他任务。在 MFC 中可以吗?你能建议我这样做的方法吗?目前,我尝试使用以下代码和 document .但它在所有监视器(3 个监视器)中显示 GUI。

CRect rcDesktop;
rcDesktop.left = GetSystemMetrics(SM_XVIRTUALSCREEN);
rcDesktop.right = rcDesktop.left + GetSystemMetrics(SM_CXVIRTUALSCREEN);
rcDesktop.top = GetSystemMetrics(SM_YVIRTUALSCREEN);
rcDesktop.bottom = rcDesktop.top + GetSystemMetrics(SM_CYVIRTUALSCREEN);
MoveWindow(rcDesktop, FALSE);

我也为单显示器做过

SetParent(GetDesktopWindow());
CRect rect;
GetDesktopWindow()->GetWindowRect(&rect);
SetWindowPos(&wndTopMost,rect.left,rect.top,rect.right,rect.bottom,SWP_SHOWWINDOW);

目标是 enter image description here感谢您的帮助

最佳答案

使用EnumDisplayMonitors获取连接到机器的所有显示器的指标,并将左侧两个显示器的尺寸相加。

您需要对显示器的几何形状以及它们之间的排列方式做出一些假设和/或额外的计算。例如,最左边的两个不一定是枚举顺序中的前两个。但这应该能让您获得执行此操作所需的数据。

关于c++ - 使用 MFC 在 2 个监视器上扩展 GUI,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29740504/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com