У меня есть кнопка в моем электронном приложении, в которой говорится «открытый файл», и когда вы нажимаете на нее, открывается диалоговое окно открытого файла, и я могу выбрать файл.Электрон - Открыть файл из меню
Хотя, как я могу открыть диалоговое окно «Открыть файл», когда я нажимаю элемент меню на панели инструментов приложений?
Это мой ярлык в подменю для меню панели инструментов:
label: 'Open',
accelerator: 'CmdOrCtrl+O'
Я хочу сделать что-то вроде:
label: 'Open',
accelerator: 'CmdOrCtrl+O',
role: 'open'
Но нет такой роли, как «открытая».
Как я могу реализовать событие on click, открывающее диалоговое окно открытого файла?
Main.js раздел открыть файл:
const ipc = require('electron').ipcMain
const dialog = require('electron').dialog
ipc.on('open-file-dialog', function (event) {
dialog.showOpenDialog({
properties: ['openFile', 'openDirectory']
}, function (files) {
if (files) event.sender.send('selected-file', files)
})
})
index.js:
const ipc = require('electron').ipcRenderer
const selectDirBtn = document.getElementById('open')
selectDirBtn.addEventListener('click', function (event) {
ipc.send('open-file-dialog')
})
ipc.on('selected-file', function (event, path) {
document.getElementById('selected-file').innerHTML = `► ${path}`
document.getElementById('selected-file2').innerHTML = `${path}`
})