gpt4 book ai didi

java - 为什么键绑定(bind)会死?

转载 作者:行者123 更新时间:2023-12-04 06:00:26 25 4
gpt4 key购买 nike

此应用程序需要在按下 GUI 按钮或箭头键时发送电机移动命令,并在释放 GUI 按钮或箭头键时发送电机停止命令。
在按下相应的 GUI 按钮之前,这些绑定(bind)适用于向下箭头。
按下 GUI 按钮后,箭头键将被忽略。
如果是焦点更改杀死了绑定(bind),那么如何将绑定(bind)编程为独立于焦点更改?
如果不是,真正的问题是什么?如何修复?

键绑定(bind)

Action tiltStop = new AbstractAction() {
public void actionPerformed(ActionEvent e) {
MotorStop(TILT_AXIS);
}
};
mainPanel.getInputMap().put(KeyStroke
.getKeyStroke(KeyEvent.VK_DOWN, 0, true), "tiltStop");
mainPanel.getActionMap().put("tiltStop", tiltStop);
Action tiltDown = new AbstractAction() {
public void actionPerformed(ActionEvent e) {
MotorMove(TILT_AXIS, NEGATIVE_DIR);
}
};
mainPanel.getInputMap().put(KeyStroke
.getKeyStroke(KeyEvent.VK_DOWN, 0, false), "tiltDown");
mainPanel.getActionMap().put("tiltDown", tiltDown);

图形用户界面按钮
private void jButtonAxisDownMousePressed(java.awt.event.MouseEvent evt) {
MotorMove(TILT_AXIS, NEGATIVE_DIR);
}
private void jButtonAxisDownMouseReleased(java.awt.event.MouseEvent evt) {
MotorStop(TILT_AXIS);
}

最佳答案

how can bindings be programmed to be independent of focus chages?



查看 getInputMap() 方法。有 3 种不同的 InputMap。你想要一个是祖先的,所以即使组件没有焦点它也能工作。

关于java - 为什么键绑定(bind)会死?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8973673/

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