【发布时间】:2017-02-17 21:21:21
【问题描述】:
我的电子应用程序中有一个按钮,上面写着“打开文件”,当你点击它时,打开文件对话框会出现,我可以选择一个文件。
但是,当我从应用程序工具栏中单击菜单项时,如何打开“打开文件对话框”?
这是我在工具栏菜单子菜单中的标签:
label: 'Open',
accelerator: 'CmdOrCtrl+O'
我想做这样的事情:
label: 'Open',
accelerator: 'CmdOrCtrl+O',
role: 'open'
但没有“开放”这样的角色。
如何实现打开打开文件对话框的点击事件?
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}`
})
【问题讨论】:
标签: javascript node.js electron