screen
画面サイズ、ディスプレイ、カーソル位置などの情報を取得します。
プロセス: メイン
このモジュールは、app
モジュールのready
イベントが発行されるまで使用できません。
screen
はEventEmitterです。
注記: レンダラー/DevToolsでは、window.screen
は予約済みのDOMプロパティであるため、let { screen } = require('electron')
と記述しても動作しません。
画面全体を埋めるウィンドウを作成する例
- main.js
// Retrieve information about screen size, displays, cursor position, etc.
//
// For more info, see:
// https://electron.dokyumento.jp/docs/latest/api/screen
const { app, BrowserWindow, screen } = require('electron/main')
let mainWindow = null
app.whenReady().then(() => {
// Create a window that fills the screen's available work area.
const primaryDisplay = screen.getPrimaryDisplay()
const { width, height } = primaryDisplay.workAreaSize
mainWindow = new BrowserWindow({ width, height })
mainWindow.loadURL('https://electron.dokyumento.jp')
})
外部ディスプレイにウィンドウを作成する別の例
const { app, BrowserWindow, screen } = require('electron')
let win
app.whenReady().then(() => {
const displays = screen.getAllDisplays()
const externalDisplay = displays.find((display) => {
return display.bounds.x !== 0 || display.bounds.y !== 0
})
if (externalDisplay) {
win = new BrowserWindow({
x: externalDisplay.bounds.x + 50,
y: externalDisplay.bounds.y + 50
})
win.loadURL('https://github.com')
}
})
イベント
screen
モジュールは次のイベントを発行します
イベント: 'display-added'
戻り値
event
イベントnewDisplay
ディスプレイ
newDisplay
が追加されたときに発行されます。
イベント: 'display-removed'
戻り値
event
イベントoldDisplay
ディスプレイ
oldDisplay
が削除されたときに発行されます。
イベント: 'display-metrics-changed'
戻り値
event
イベントdisplay
ディスプレイchangedMetrics
string[]
display
の1つ以上のメトリクスが変更されたときに発行されます。changedMetrics
は、変更内容を表す文字列の配列です。可能な変更はbounds
、workArea
、scaleFactor
、rotation
です。
メソッド
screen
モジュールには次のメソッドがあります
screen.getCursorScreenPoint()
戻り値 Point
マウスポインタの現在の絶対位置。
注記: 戻り値は画面の物理的な点ではなく、DIP点です。
screen.getPrimaryDisplay()
戻り値 ディスプレイ - プライマリディスプレイ。
screen.getAllDisplays()
戻り値 Display[] - 現在利用可能なディスプレイの配列。
screen.getDisplayNearestPoint(point)
point
Point
戻り値 ディスプレイ - 指定された点に最も近いディスプレイ。
screen.getDisplayMatching(rect)
rect
Rectangle
戻り値 ディスプレイ - 指定された境界と最も強く交差するディスプレイ。
screen.screenToDipPoint(point)
Windows
point
Point
戻り値 Point
画面の物理的な点を画面のDIP点に変換します。DPIスケールは、物理的な点を含むディスプレイに対して実行されます。
screen.dipToScreenPoint(point)
Windows
point
Point
戻り値 Point
画面のDIP点を画面の物理的な点に変換します。DPIスケールは、DIP点を含むディスプレイに対して実行されます。
screen.screenToDipRect(window, rect)
Windows
window
BrowserWindow | nullrect
Rectangle
戻り値 Rectangle
画面の物理的な矩形を画面のDIP矩形に変換します。DPIスケールは、window
に最も近いディスプレイに対して実行されます。window
がnullの場合、rect
に最も近いディスプレイに対してスケーリングが行われます。
screen.dipToScreenRect(window, rect)
Windows
window
BrowserWindow | nullrect
Rectangle
戻り値 Rectangle
画面のDIP矩形を画面の物理的な矩形に変換します。DPIスケールは、window
に最も近いディスプレイに対して実行されます。window
がnullの場合、rect
に最も近いディスプレイに対してスケーリングが行われます。