我正在Electron中工作,试图检测Electron何时执行Control + 0功能,该功能会将窗口的缩放比例恢复到100%。我有一个菜单,例如chrome右上角的3点菜单,我想在使用Control + 0时更新缩放倍数。
但是,根据我的尝试,我已经收集到,如果像我在该功能下面所做的那样添加一个键盘事件监听器,我将运行更新菜单的缩放,这将在电子/铬处理完成之前完成。
那么我将如何检测何时完成操作以便相应地执行我的功能?
public onKeydown(event: KeyboardEvent) {
const key = event.key
const control = event.ctrlKey
if (control === true && key === '0') {
this.updateCurrentZoom()
}
}
答案 0 :(得分:1)
我最近在我的Electron应用程序的窗口标题中添加了一个后缀字符串,用于显示当前缩放系数。
为了检测缩放变化(包括缩放重置),我不得不使用窗口“调整大小”事件,令人惊讶的是,该事件不仅在修改窗口大小时触发,而且在缩放级别更改时触发!
// Renderer process
const { webFrame } = require ('electron');
window.addEventListener
(
'resize',
(event) =>
{
// Returns 1.0 for 100%
let zoomFactor = webFrame.getZoomFactor ();
updateCurrentZoom (zoomFactor);
}
);