7.3.2的文档:https://github.com/electron/electron/blob/v7.3.2/docs/api/dialog.md 不同版本可以切换
一个是同步对话框,另外一个是异步。
同步:
//will-prevent-unload这个事件只会在弹出框关闭时触发,比如alert,confirm
win.webContents.on('will-prevent-unload', (event) => {
);
const options = {
type: 'question',
buttons: ['Cancel', 'Yes, please', 'No, thanks'],
defaultId: 2,
cancelId: 0,
title: 'Question',
message: 'my window?',
detail: 'It does not really matter',
checkboxLabel: 'remember',
checkboxChecked: true,
};
const choice= dialog.showMessageBoxSync(win, options);
const isCancel = (choice === 0)
if (!isCancel) {
event.preventDefault()//确认
}
})
异步:
// 窗口关闭 win.on('close', (e) => { e.preventDefault(); dialog.showMessageBox(win, { type: 'warning', title: '关闭', message: '是否退出?', buttons: ['取消', '确定'] }).then((index) => { if (index.response === 1) { win = null; app.exit(); } }); });