ElectronのBrowserWindowクラスで作ったウィンドウの設定などについてメモ。
BrowserWindowクラスのAPIは↓にまとまってますが、よく使いそうなのをメモしときます。 http://electron.atom.io/docs/v0.34.0/api/browser-window/
ウィンドウの位置/サイズに関するメソッド
setFullScreen(flag: boolean)
ウィンドウのフルスクリーン化をします。setKiosk(flag)
メソッドでも同じようにフルスクリーンになります。
setAspectRatio(adpectRation[, extraSize])
これはmacのときだけ使えるみたい。
ウィンドウのアスペクト比を指定できるそうです。
自分はwin環境しか持ってないので、コレはスキップ。
setBounds/getBounds
以下のメソッドで、ウィンドウの位置とサイズを設定できます。
setBounds(options)
optionsには、x,y,width,heightのプロパティを持ったオブジェクトを渡すことで、ウィンドウの位置やサイズを指定します。
また、現在のウィンドウ位置は、getBounds
メソッドで取得できます。
setPosition(x, y)/getPosition()
ウィンドウの表示位置を設定/取得できます。
mainWindow.setPosition(10, 10); console.log(mainWindow.getPosition());
setSize(width, height)/getSize()
同じような感じで、現在のウィンドウのサイズを設定/取得できます。
center()
ウィンドウを、ディスプレイの中央に移動します。
これは結構便利かも。
ウィンドウの最大サイズ/最小サイズなど
以下のメソッドで、ウィンドウの最大サイズの設定/取得と最小サイズの設定/取得ができます。
setMinimumSize(width, height) getMinimumSize() setMaximumSize(width, height) getMaximumSize()
その他
setResizable(resizeable)/isResizeable()
ウィンドウのリサイズ有効/無効の設定などができます。
setAlwaysOnTop(flag)
こんな風にすると、常に最前面に表示できます。
ちょっとしたツールを作るときとかに、こういうオプションを活用できるかも。
mainWindow.setAlwaysOnTop(true);
ウィンドウのタイトル取得/設定
setTitle(title)/getTitle() タイトルの文字列の取得/設定ができます。
mainWindow.setTitle("Window Title");
ただし、RendererProcessで表示しているhtmlのページでtitleタグの指定があると、そっちが優先でウィンドウのタイトルに設定されてるっぽい。
setSkipTaskbar(skip)
setSkipTaskbar(true)
とすると、タスクバーにアプリのアイコンを表示しなくなります。