gpt4 book ai didi

dialog - dialog.showMessageBoxSync(null,options)被隐藏

转载 作者:行者123 更新时间:2023-12-03 12:24:08 28 4
gpt4 key购买 nike

我有一个 Electron 应用程序。如果我通常使用dialog.showmessageBoxSync,则必须等待用户输入。选项为:关闭,取消或确定。

它工作正常,但是如果我在对话框外部(应用程序内的任何位置)单击,则此消息框将隐藏。我无法点击任何选项。

如何使消息框保持焦点,直到用户选择一个按钮来单击或关闭对话框?在继续在应用程序的其余部分中工作之前,应迫使用户对消息框做出响应。

dialog.showMessageBoxSync({
type: "info",
buttons: ["Ok,", "Cancel"],
defaultId: 0,
title: "",
message:""
cancelId: 1,
})

最佳答案

我建议在父窗口中传递

docs

The browserWindow argument allows the dialog to attach itself to a parent window, making it modal.


 const iconPath = upath.toUnix(upath.join(__dirname, "app", "assets", "icon.png"));
const dialogIcon = nativeImage.createFromPath(iconPath);

var options = {
type: 'question',
buttons: ['&Yes', '&No'],
title: 'Confirm Quit',
icon: dialogIcon,
normalizeAccessKeys: true,
message: 'Do you really want to close the application?'
};

const win = BrowserWindow.getFocusedWindow();
dialog.showMessageBox(win, options)
.then((choice) => {
if (choice.response === 0) {
quitApplication();
}
}).catch(err => {
console.log('ERROR', err);
});

关于dialog - dialog.showMessageBoxSync(null,options)被隐藏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60171775/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com