繁体   English   中英

VSCode 扩展。 如何在右键单击时选择树视图项

[英]VsCode extension. How to select a tree view item on right click

我正在编写一个 VsCode 扩展。 当用户右键单击树视图中的项目时,他会收到弹出命令,该命令的操作适用于先前选择的项目。 在 VsCode 本身中,情况并非如此。 例如,右键单击新文件,将文件添加到当前突出显示的文件夹(不是选定的文件夹)。 如何在我的扩展中复制这种行为?

我找到了解决方案。 在注册右键运行的命令时,添加一个参数,即树节点。 当通过菜单弹出调用命令时,此树节点将是突出显示的节点,而不是选定的节点。 例如替换代码

commands.registerCommand('myExtension.myCommand', () => this.command());

后来:

command() {
}

commands.registerCommand('myExtension.myCommand', command(), this);

后来:

command(node: TreeNode) {
    if (node) {
    } 
}

如果可以从不同的上下文(如按钮)调用命令,则if (node)是必需的,在这种情况下node将是undefined

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM