2013-06-26 7 views
11

私は、複数のディスプレイを使用するパッケージ化されたアプリを開発中です。私は特定のディスプレイでウィンドウを開くことができる必要があります。また、ウィンドウを開いてから、javascriptを使ってモニターに移動してみました。しかし、アプリはアクティブなディスプレイの範囲を超えて移動することはありません。Chromeパッケージのアプリとデュアルモニター

これを動作させる方法に関するアイデアはありますか?

+0

私が見たことから、Chromeは複数のモニタではぎこちない傾向があります。プライマリディスプレイ(私は3つのモニタを持っている)を変更すると、クロム画面が黒く反応しなくなります。クロムの内部問題の可能性が高いです –

+0

もう1つは、ChromeのNative Client SDKをウィンドウ管理に使用することでした。私はSDKについてはあまり知らない。それを使用してウィンドウを制御することは可能でしょうか? – Kywillis

+0

これは主に、デスクトップアプリケーションをブラウザに統合するためのものです。それは非常にうまくいくかもしれません、それはちょうどあなたがクロムで得るアクセスのレベルに依存します。 –

答えて

0

これは私が望んでいた解決策ではなく、そこに記載されているコメントの1つがChromeと複数のモニターの不具合であるためです。私の場合、これは内部アプリケーションなので、私はこの作業を行うために必要なものをインストールすることができます。

私の解決策は、chromeアプリケーションを起動し、Windows32 APIを使用してウィンドウを移動するコンソールアプリケーションを作成することでした。明らかに理想的ではありませんが、それは動作し、ユーザーはまだアプリを起動するためにワンクリックが必要です。例えば

1

使用AppWindow#setBounds

V34

ブームでテスト

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

。これを変更して回答を修正します。

3

chrome.system.display.getInfoを使用すると、アクティブなディスプレイごとに表示情報を取得できます。

displayInfo.workAreaでは、各ディスプレイの作業領域を取得できます。大きなディスプレイを考える必要があり、各ディスプレイはworkAreaです。この情報を使用して、適切なモニターに

AppWindow#setBoundsのウィンドウを移動できます。 carfull、AppWindow#moveToが機能していません。

関連する問題