Chrome打包应用程序和双显示器

时间:2013-06-26 18:58:22

标签: google-chrome-app

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

有关如何使其发挥作用的任何想法?

4 个答案:

答案 0 :(得分:3)

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

使用displayInfo.workArea,您可以获得每个显示器的工作区域,您只需要考虑一个大显示器,每个显示器都是一个workArea。有了这些信息,您可以使用

移动窗口

AppWindow#setBounds到正确的监视器。 carfull,AppWindow#moveTo无效。

答案 1 :(得分:1)

使用AppWindow#setBounds

E.g。

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

在v34上测试

动臂。将其更改为正确答案。

答案 2 :(得分:0)

这不是我希望的解决方案,但正如其中一条评论提到Chrome和多个显示器存在错误。在我的情况下,这是一个内部应用程序,所以我能够安装任何我需要做的工作。

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

答案 3 :(得分:0)

您可以编写一个Chrome扩展程序来完成此任务。在“后台”脚本中,您可以侦听chrome.windows.onCreated事件,并使用chrome.windows.update函数将窗口移至其他监视器