gpt4 book ai didi

java - Swing - 如何添加 Crtl + JButton 单击

转载 作者:行者123 更新时间:2023-11-30 05:59:16 25 4
gpt4 key购买 nike

我想添加一个在简单计算器上使用 Ctrl 键 + JButton 单击鼠标的快捷方式选项。我知道如何使用 KeyStroke 输入 Ctrl + C 但我不知道如何使用 JButton > 使用鼠标单击。这是我所拥有的:

private void displayCopyRight() {
buttons[13].setAction(new AbstractAction("" + button_Shapes[13]) {
{
putValue(Action.ACTION_COMMAND_KEY, getValue(Action.NAME));
}

public void actionPerformed(ActionEvent e){
display.setText("[c] Khoa-Nguyen");
}
});

int c = JComponent.WHEN_IN_FOCUSED_WINDOW;
KeyStroke ks = KeyStroke.getKeyStroke(KeyEvent.VK_C, InputEvent.CTRL_DOWN_MASK);
buttons[13].getInputMap(c).put(ks, button_Shapes[13]);
buttons[13].getActionMap().put(button_Shapes[13], buttons[13].getAction());
}

这只将键盘上的 Ctrl + 字母 C 绑定(bind)在一起。我想要做的是使用鼠标绑定(bind) Ctrl + JButton 单击。按钮[13]是字母C,作为JButton。请帮忙。

最佳答案

您可以尝试检查 ActionEvent 的修饰符属性。它是一个掩码字段如果按住 Ctrl 键,则可以测试 ActionEvent.CTRL_MASK 的修饰符字段。

public void actionPerformed(ActionEvent e){
if ((ActionEvent.CTRL_MASK & e.getModifiers()) != 0){
// Do your action here
}
}

关于java - Swing - 如何添加 Crtl + JButton 单击,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52545777/

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