Наличие нескольких слушателей событий на одной кнопке JFrame - PullRequest
0 голосов
/ 01 декабря 2018

Итак, я работаю над проектом, и мне было интересно, как разместить несколько слушателей на одной кнопке.Я хочу иметь возможность устанавливать текст определенных текстовых полей и запускать игру одним нажатием кнопки.Тем не менее, текстовые поля не обновляются, пока игра не закончится.(Я поместил только тот код, который мне показался релевантным, при нажатии кнопки, я включил только один случай с переключателем, поскольку они довольно похожи).Я думал, что если у кнопки может быть несколько прослушивателей событий, она может запустить два отдельных метода, чтобы установить текстовые поля и играть в игру одним щелчком мыши.Вход поступает от другого слушателя событий.

  private void startActionPerformed(java.awt.event.ActionEvent evt) {
      Scanner input = new Scanner(System.in);
    /**Prompts the user for their name*/
    System.out.println("What is your name?: ");
    /**Plays the game*/
    if((Hyd > 0 && Hung > 0) && (Temp > 0 && Rest > 0)){
    try{

        Deck cards = new Deck();


        cardNum =  ((int)(Math.random() * 5) + 1);;

        /**Plays a specific card method depending on the randomly generated number*/
        switch (cardNum)
        {
            case 1: question = ("You've run into a bear!");
                    greenChoice = ("Green Button: You RUN away!");
                    redChoice = ("Red Button: You FIGHT the bear!");
// i want to change this textfield as soon as the button is clicked
                               questionK.setText(question);
                    System.out.println("(Hold the button you choose until the game replies)");

                    /**Count down timer for the user*/
                    for (int i = 10; i >= 0; i--)
                    {
                        System.out.println("Timer: " + i);
                        Thread.sleep(i * 350);
                    }
...