const gotTheLock = app.requestSingleInstanceLock(); 设置只要有一个应用在运行,再次打开则打开聚焦当前应用而不是重新打开窗口
时间: 2024-03-28 19:42:17 浏览: 107
是的,当运行第二个实例时,可以使用 `app.on('second-instance', (event, commandLine, workingDirectory) => {...})` 事件来处理。在事件处理程序中,可以使用 `BrowserWindow.getAllWindows()` 方法获取所有已经打开的窗口,然后将焦点聚焦到当前活动的窗口即可,示例代码如下:
```javascript
app.on('second-instance', (event, commandLine, workingDirectory) => {
// 获取所有窗口
const windows = BrowserWindow.getAllWindows();
if (windows.length > 0) {
// 聚焦到当前活动窗口
windows[0].focus();
}
});
```
在主进程中添加上述代码后,当打开第二个实例时,将聚焦到第一个实例中的活动窗口,而不是打开新窗口。
阅读全文