我正在开发一个使用多个显示器的打包应用。我需要能够在特定的显示器中打开窗口。我也试过打开窗口,然后使用javascript将它们移动到显示器上。但该应用程序不会移动任何超出活动显示的范围。
有关如何使其发挥作用的任何想法?
答案 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函数将窗口移至其他监视器