在app.on('ready')中注册快捷键if(!globalShortcut.isRegistered('CommandOrControl+Alt+S')){ globalShortcut.register('CommandOrControl+Alt+S', function () { // 跳出的内容 const searchPath = `file://${__dirname}/public_html/search.html`; let searchWin = new BrowserWindow({width: 400, height: 275}); searchWin.loadURL(searchPath); searchWin.show(); searchWin.on('close', ()=>{ searchWin = null; }) }); }多次使用ctrl+alt+s 会生成很多这个页面, 是否有方法可以确保这个页面未关闭的情况下,呼出这个页面,否则就创建这个页面。
1 回答
沧海一幻觉
TA贡献1824条经验 获得超5个赞
...你把 searchWin 这个变量保存一下, 或者提高到和 app 一样的层次
let searchWin = null;
if(!globalShortcut.isRegistered('CommandOrControl+Alt+S')){
globalShortcut.register('CommandOrControl+Alt+S', function () {
// 跳出的内容
if (!searchWin)
{
const searchPath = `file://${__dirname}/public_html/search.html`;
searchWin = new BrowserWindow({width: 400, height: 275});
searchWin.loadURL(searchPath);
searchWin.on('close', ()=>{
searchWin = null;
})
}
});
}
代码未测试, 大概就是这个思路, 有问题再交流...
添加回答
举报
0/150
提交
取消