当在vscode扩展中显示信息消息时,将键分配给默认按钮选项



我正在VSCode中创建一个扩展,当您单击选项"时,该扩展将关闭所有打开的文本文档;是";在CCD_ 1中。

按下";是";按钮会正常工作,但我想要";输入";按键盘上的键做同样的事情?注册命令时,如何监听按键?有可能吗?

这是我现在的代码:

context.subscriptions.push(
vscode.commands.registerCommand(
"close-tabs",
async (inputValue?: string) => {
const { activeTextEditor } = vscode.window;
if (!activeTextEditor) {
vscode.window.showInformationMessage("No active text editor");
return;
}
const answer = await vscode.window.showInformationMessage("Want to close tabs?", "Yes", "No");
if (answer === "Yes") {
vscode.commands.executeCommand("openEditors.closeAll");
}
// ON_ENTER: I was thinking an if case here that checks if enter has been pressed and also executes the command above? 
}
)
);

重申。我如何选择";是";当按下";输入";钥匙

由于InformationMessage框不是模态的,因此当它出现时不会获得焦点。

恐怕你必须让它成为模态——在你的情况下,这可能是可以接受的——才能得到你想要的行为:

const answer = await vscode.window.showInformationMessage("Want to close tabs?", { modal: true }, "Yes", "No");

然后消息框的第一个按钮会自动聚焦,输入会触发它。

相关内容

  • 没有找到相关文章

最新更新