Как использовать мышь в Java Swing? - PullRequest
0 голосов
/ 21 ноября 2018

Как это сделать?

Я хочу сделать это, как я могу сделать

public void mousePressed(MouseEvent e){
    switch(e.getActionCommand){

        case button1: System.out.println("button1 pressed"); 
                         break; 
        case button2: System.out.println("button2 pressed"); 
                         break;
        case button3: System.out.println("button3 pressed"); 
                        break; 
        case button4: System.out.println("button4 pressed"); 
                        break; 
        case button5: System.out.println("button5 pressed"); 
                        break;
    }
}

1 Ответ

0 голосов
/ 21 ноября 2018

чтобы ответить на ваш вопрос, давайте начнем с оператора switch / case, его можно использовать с числами и String в Java.Поэтому вам нужно иметь дело со String при захвате взаимодействия с пользователем в вашем слушателе, решение заключается в следующем: вам нужно использовать метод setName (...) в ваших компонентах Swing и захватить это имя, которое является String в вашем слушателе.Посмотрите на этот пример:

    public void mousePressed(MouseEvent e){
       Component c = (Component) e.getSource();
       switch(c.getName()){
         case "button1": System.out.println("button1 pressed"); 
            break; 
         case "button2": System.out.println("button2 pressed"); 
            break;
         case "button3": System.out.println("button3 pressed"); 
            break; 
         case "button4": System.out.println("button4 pressed"); 
            break; 
         case "button5": System.out.println("button5 pressed"); 
            break;
    }
}

Но не забудьте использовать метод setName ("buttonX") для каждой кнопки при создании, потому что имя, которое вы передали в методе, должно соответствовать одному изимена в вашей инструкции switch / case.

...