如何扩展assets面板的右键菜单?

不是扩展自定义面板。。是扩展assets panel的菜单。。。如何做 求调教

这部分比较复杂。有个类叫做 Editor.Menu 是专门做这个的。

const electron = require(‘electron’);
const BrowserWindow = electron.BrowserWindow;

'popup-create-menu' (event, x, y) {
  var template = [
    { label: '新建', submenu: ... },
    { type: 'separator' },
    { ... }
  ];
  var editorMenu = new Editor.Menu(template, event.sender);

  x = Math.floor(x);
  y = Math.floor(y);
  editorMenu.nativeMenu.popup(BrowserWindow.fromWebContents(event.sender), x, y);
  editorMenu.dispose();
},

先在 core 层也就是 main.js 内注册一个消息,消息内负责生成 menu 并显示,页面只需要传一些参数到 core 层。

关于里面的 template 写法,可以去看看 electron 的 Menu 章节。

https://electron.atom.io/docs/api/menu/45
https://electron.atom.io/docs/api/menu-item/26

图省事简单的话,可以直接用一个弹出层 div 解决问题~~

1赞

这个我试过,可以给自定义panel添加,但是我想给assets panel添加。。。

webContents.executeJavaScript
看下这个帖子

1赞

这个是给场景区域添加右键菜单的,同问如何给Assets区域添加右键菜单,并且获取哪个文件被右键选中了

1赞

嗯嗯 哥们懂我

请问这个问题,解决了吗? 如何给Assets区域添加右键菜单?
跪求 demo/代码.

1赞

你这个的实现原理是啥。。

2.4下editorMenu.dispose已经没了。最新的方式会导致右键后,原来的菜单都不显示了