브라우저 창이 Electron의 화면 안에 있는지 확인하는 방법
5010 단어 electronjavascript
특정 상황에서 보조 화면이 분리될 수 있기 때문에 화면이 연결되지 않은 상태에서 위치 복원 시 창이 화면 밖에 있을 수 있습니다.
이를 감지하기 위해 주어진 위치가 다음과 같이 화면 내부에 있는지 확인할 수 있습니다.
import { remote, ipcRenderer, BrowserWindow } from 'electron'
const { screen } = remote
function isWithinDisplayBounds(pos: { x: number, y: number }) {
const displays = screen.getAllDisplays()
return displays.reduce((result, display) => {
const area = display.workArea
return (
result ||
(pos.x >= area.x &&
pos.y >= area.y &&
pos.x < area.x + area.width &&
pos.y < area.y + area.height)
)
}, false)
}
그런 다음 범위를 벗어난 경우 기본 화면으로 이동해야 합니다.
const isOnScreen = isWithinDisplayBounds({ x, y })
const primaryScreenBounds = screen.getPrimaryDisplay().bounds
if (!isOnScreen) {
x = (primaryScreenBounds.width - w) / 2
y = (primaryScreenBounds.height - h) / 2
}
Reference
이 문제에 관하여(브라우저 창이 Electron의 화면 안에 있는지 확인하는 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/craftzdog/how-to-check-if-a-browser-window-is-inside-of-screens-on-electron-1eme텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)