如何控制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的值即可

相关推荐
朦胧之几秒前
AI 编程-老项目改造篇
java·前端·后端
swipe3 小时前
从 0 到 1 实现大文件上传:分片、秒传、断点续传、暂停、重试与服务端合并
前端·javascript·面试
爱勇宝3 小时前
我做了一个只用来搜歌词的小 App
android·前端·后端
甲维斯3 小时前
用AI还原《坦克大战》并3D化升级!
前端·人工智能·游戏开发
IT_陈寒4 小时前
SpringBoot自动配置坑了我一晚上,原来问题出在这
前端·人工智能·后端
kyriewen4 小时前
AI 生成的代码能跑就行?这 5 个坑迟早炸
前端·javascript·ai编程
kisshyshy4 小时前
🍦 雪糕、食堂、火车厢:三幅漫画吃透栈、队列与链表
javascript·算法
谷子在生长5 小时前
纯血鸿蒙自定义弹窗最佳实践:从「到处复制」到「一行调用」
前端·harmonyos
壹方秘境5 小时前
我用Go语言开发了一个跨平台的HTTPS抓包和调试工具
前端·后端·ios
神秘面具男5 小时前
HarmonyOS 6.0跨端远程控制
前端·后端