12

我正在开发一个将使用多个显示器的打包应用程序。我需要能够在特定显示器中打开窗口。我也尝试过打开窗口,然后使用 javascript 将它们移动到监视器上。但是应用程序不会移动到活动显示的范围之外。

关于如何让它发挥作用的任何想法?

4

4 回答 4

4

与此一起使用chrome.system.display.getInfo,您可以获得每个活动显示器的显示信息。

有了displayInfo.workArea你可以得到每个显示器的工作区域,你只需要想一个大显示器,每个显示器就是一个工作区。有了这些信息,你可以移动你的窗口

AppWindow#setBounds到正确的显示器。是carfull,AppWindow#moveTo不工作。

于 2014-04-22T10:22:50.217 回答
1

利用AppWindow#setBounds

例如

chrome.app.window.get('mainWindow').setBounds({"height": 200, "left": 2000})

在 v34 上测试

繁荣。将此更改为正确答案。

于 2014-01-29T12:44:04.127 回答
0

这不是我希望的解决方案,但正如其中提到的评论之一,Chrome 和多显示器存在错误。就我而言,这是一个内部应用程序,因此我可以安装任何我需要的东西来完成这项工作。

我的解决方案是创建一个控制台应用程序,它启动 chrome 应用程序,然后使用 Windows32 API 移动窗口。显然不理想,但它可以工作,用户仍然只需要一键启动应用程序。

于 2013-06-27T15:25:47.207 回答
0

您可以编写一个 chrome 扩展来完成这项工作。在后台脚本中,您可以监听 chrome.windows.onCreated 事件并使用 chrome.windows.update 函数将窗口移动到其他监视器

于 2019-02-13T12:13:22.780 回答