Я делаю табло для баскетбола GUI, и мне трудно заставить ключевого слушателя ответить. Я пытаюсь получить начальную оценку JLabel плюс 1 каждый раз, когда пользователь нажимает клавишу F.
Помощь будет принята с благодарностью. Хорошего дня :).
public class Scoreboard extends JFrame implements KeyListener
{
public Scoreboard() {
UIManager.put("Label.foreground", Color.WHITE);
UIManager.put("Panel.background", Color.BLACK);
super.setTitle("Scoreboard");
setLayout(new GridLayout(0, 3, 0, 0));
home = new JPanel();
setComponentOrientation(ComponentOrientation.LEFT_TO_RIGHT);
home.setLayout(new GridLayout(2, 0, 0, 10));
Font font = new Font("Advanced LED Board-7", Font.BOLD, 50);
homeScore = new JLabel(Integer.toString(homePoints));
homeScore.addKeyListener(this);
homeScore.setFont(score);
homeScore.setHorizontalAlignment(JLabel.CENTER);
border = BorderFactory.createTitledBorder(hName); // adds title border
border.setTitleFont(font);
border.setTitleColor(Color.WHITE);
border.setTitleJustification(TitledBorder.CENTER);
homeScore.setBorder(border);
home.add(homeScore);
}
public void keyTyped(KeyEvent e)
{
}
public void keyPressed(KeyEvent e)
{
int keyCode = e.getKeyCode();
if (keyCode == KeyEvent.VK_F)
{
homePoints++;
homeScore.setText(Integer.toString(homePoints));
}
}
public void keyReleased(KeyEvent e) {
// TODO Auto-generated method stub
}