gpt4 book ai didi

javascript - 如何检测是否在按下键盘按键的情况下单击了按钮? (按住 Ctrl 键单击、按住 Alt 键单击等)

转载 作者:行者123 更新时间:2023-12-03 03:53:19 25 4
gpt4 key购买 nike

我正在尝试为 Adob​​e After Effects 脚本编写 UI。我想添加一个功能,用户可以按住 CTRL 键单击按钮,而不是直接单击按钮而不按任何按键,以获得稍微不同的行为。

但是,问题是,我不知道如何检测单击按钮时是否按下了某个键。

我已经成功检测到按键

myPanel.addEventListener("keydown", function (kd) {alert(kd.keyIdentifier); return(kd.keyIdentifier);});

这段代码添加了一个监听器,当按下按钮时,该监听器会提醒我按钮的名称。我还有一个按钮 onClick 事件来控制按下按钮时会发生什么。但是,我不知道如何组合这两个监听器并获取有关在单击按钮期间是否按下按键的信息。我尝试将 keydown 监听器放置在 onClick 函数中,但它根本不起作用。

最佳答案

我设法让它发挥作用。

Adobe ScriptUI 环境允许您使用 Keyboard state 对象随时监控键盘状态。您可以从:ScriptUI.environment.keyboardState 获取它。它具有 altKeyctrlKey 等属性,根据按键是否被按下返回一个 bool 值。您所要做的就是将对象启动放入按钮的 onClick 事件中:

button.onClick = function() {
isCtrlPressed = ScriptUI.environment.keyboardState.ctrlKey;
}

有关更多信息,我引用 Adob​​e JavaScript 工具指南第 155 页

关于javascript - 如何检测是否在按下键盘按键的情况下单击了按钮? (按住 Ctrl 键单击、按住 Alt 键单击等),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45078506/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com