小编iQe*_*Qew的帖子

Java KeyBindings组合不起作用

我正在努力创造一种识别关键组合的方法.在我甚至可以设置任何布尔值之前,我注意到某些键组合会导致忽略其他键.

package question;

import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Dimension;
import java.awt.event.ActionEvent;
import java.awt.event.KeyEvent;

import javax.swing.AbstractAction;
import javax.swing.JComponent;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.KeyStroke;

public class Example extends JPanel {

/**
 * 
 */
private static final long serialVersionUID = 1L;

public Example() {

    setBackground(Color.DARK_GRAY);
    setPreferredSize(new Dimension(500,500));
    setFocusable(true);
    requestFocusInWindow();

    getInputMap(JComponent.WHEN_IN_FOCUSED_WINDOW).put(KeyStroke.getKeyStroke(KeyEvent.VK_A, 0), "action_a");
    getActionMap().put("action_a", new AbstractAction() {

        @Override
        public void actionPerformed(ActionEvent e) {
            System.out.println("A has been pressed!");
        }
    });
    getInputMap(JComponent.WHEN_IN_FOCUSED_WINDOW).put(KeyStroke.getKeyStroke(KeyEvent.VK_S, 0), "action_s");
    getActionMap().put("action_s", new AbstractAction() {

        @Override
        public void actionPerformed(ActionEvent e) {
            System.out.println("S …
Run Code Online (Sandbox Code Playgroud)

java windows events combinations keyevent

1
推荐指数
1
解决办法
77
查看次数

标签 统计

combinations ×1

events ×1

java ×1

keyevent ×1

windows ×1