2015-03-02 2 views
0

Я пытаюсь сделать кнопку, если я нажму кнопку hit, если z==21, но кнопка, которую я пытаюсь сделать, не появляется. Это для игры в BlackJack, но я вытащил из нее немного кода, ту часть, которая не работает. Вот код:Почему мой действующий агент не работает?

import java.awt.Color; 
import java.awt.event.ActionEvent; 
import java.awt.event.ActionListener; 

import javax.swing.JButton; 
import javax.swing.JFrame; 
import javax.swing.JTextArea; 




public class blackjack { 
// Creating static variables 

     static JFrame frame = new JFrame("BlackJack"); 
     static JButton hit = new JButton("Get results"); 
     static int z = 21; 
     static int y = 0; 
     static JButton mainMenu = new JButton("Main Menu"); 
     static JButton status = new JButton("BUSTED!"); 
     static JButton status2 = new JButton("YOU WON!!!"); 
     static JTextArea words = new JTextArea("the number is " + z); 


     static class Hit implements ActionListener{ 
      public void actionPerformed(ActionEvent e){ 
       if(z==21){ 
       status.setBounds(0, 0, 500, 500); 
       status.setVisible(true); 
       status.setBackground(Color.green); 
       status.setText("The number is 21! it works!"); 
       } else { 
        status.setVisible(true); 
        status.setBackground(Color.RED); 
        status.setText("It doesn't work... more problems"); 
        } 
      } 
     } 



     public static void main (String[] args){ 
      //JFrame properties 
      frame.setLayout(null); 
      frame.setVisible(true); 
      frame.setDefaultCloseOperation(frame.EXIT_ON_CLOSE); 
      // Adding JVariables and setting bounds 
      status.setBounds(20, 50, 500, 150); 
      status2.setBounds(20, 50, 500, 150); 
      hit.setBounds(5, 110, 300, 50); 
      frame.add(hit); 
      hit.setVisible(true); 
      hit.setEnabled(true); 
      hit.addActionListener(new Hit()); 

      words.setBounds(0, 0, 100, 100); 
      frame.add(words); 
      frame.setSize(500, 500); 
    } 
} 

ответ

0

Ваш исполнитель действия действует. Но статус кнопки никогда не добавляется в JFrame.

+0

Ох. Дух. Спасибо. – CadeLikesToCode

1

Действие Слушатели должны быть добавлены с помощью addActionListener на такие вещи, как кнопки. Ваш код даже не компилируется для меня.

+0

hmmm для меня работает этот пример без ошибок. – pL4Gu33

+0

Этот 'frame.add (hit);' fail, потому что прослушиватели действий не являются компонентами. –

+0

hit - это JButton. Он должен работать. – pL4Gu33

Смежные вопросы