如何控制electron的应用在指定的分屏上打开🧐

1.前言

今天开发的时候遇到一个需求,需要控制electron的应用在指定的分屏上打开,不能在主屏幕上打开

2.思考

实现此功能需要获取到所有的屏幕信息,然后控制electron应用在指定的xy位置打开即可,所以需要使用到electronscreen模块,此模块可以获取到当前系统所有的屏幕信息

3.实现

1.导入electron的屏幕相关API

js 复制代码
const { screen } = require('electron')

2.使用指定方法获取当前系统的所有屏幕信息

js 复制代码
// 获取所有屏幕的信息(返回的是一个数组对象,每个对象就是一个屏幕的相关信息)
const displays = screen.getAllDisplays()

3.根据需求获取到指定的屏幕的信息

js 复制代码
// 示例要将应用放到第二个屏幕中
const targetDisplay = displays[1]

// 创建electron应用窗口
const mainWindow = new BrowserWindow({
  // 设置窗口所在的位置
  x: display.bounds.x,
  y: display.bounds.y,
  width: 800,
  height: 800,
 // ...... 
})

// 打开指定的url
mainWindow.loadUrl(......)

4.总结

以上就是本次需求的实现方法,通过screen模块的getAllDisplays()方法获取到所有的屏幕信息,然后找出应用需要放置的屏幕的信息,设置窗口的xy的值为指定窗口的xy的值即可

相关推荐
jason_yang4 分钟前
vue3中createApp多个实例共享状态
javascript·vue.js
_瑶瑶_5 分钟前
浅记一下ElementPlus中的虚拟化表格(el-table-v2)的简单使用
前端·javascript
Drift_Dream12 分钟前
ResizeObserver:轻松监听元素尺寸变化
前端
拉不动的猪22 分钟前
Axios 请求取消机制详解
前端·javascript·面试
该用户已不存在25 分钟前
2025 年 8 款最佳远程协作工具
前端·后端·远程工作
lxh011332 分钟前
螺旋数组题解
前端·算法·js
E***U94535 分钟前
前端安全编程实践
前端·安全
老华带你飞1 小时前
海产品销售系统|海鲜商城购物|基于SprinBoot+vue的海鲜商城系统(源码+数据库+文档)
java·前端·数据库·vue.js·论文·毕设·海鲜商城购物系统
x***B4111 小时前
React安全编程实践
前端·安全·react.js
D***t1311 小时前
前端微服务案例
前端