01/10/2018, 08:28
Xử lý sự kiện Button ActionListener trong Java
Em đang viết bài tập , 25 đèn mỗi đèn 1 button
Em set background nó là xanh lá
Nếu click vào ô button[0][0] thì button[0][0] , button[1][0], button[0][1] sẽ đổi màu
Em không biết cách lấy 1 button ra như thế nòa.
Đây là code của em:
package mypack;
import java.awt.Color;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.*;
import javax.swing.*;
public class lightsout {
public static void main(String [] args)
{
JFrame jf = new JFrame("Lights Out");
jf.setSize(820, 550);
jf.setResizable(false);
jf.setLocation(300, 150);
jf.setLayout(null);
JPanel jpnlButton = new JPanel();
jpnlButton.setSize(520,520);
jpnlButton.setBackground(Color.GRAY);
JPanel jpnlMenu = new JPanel();
jpnlMenu.setSize(250,450);
jpnlMenu.setBackground(Color.BLUE);
jpnlMenu.setLocation(540, 40);
jf.add(jpnlButton);
jf.add(jpnlMenu);
// code button cho panel
GridLayout gridlayout = new GridLayout(5,5);
jpnlButton.setLayout(gridlayout);
JButton [][] jbt = new JButton[5][5];
for(int i=0; i<5; i++)
for(int j=0; j<5; j++)
{
jbt[i][j] = new JButton();
jbt[i][j].setActionCommand("jbt"+i+j);
jbt[i][j].setText(jbt[i][j].getActionCommand()); // testcase
jbt[i][j].addActionListener(new myButtonListener());
jpnlButton.add(jbt[i][j]);
}
jf.setVisible(true);
}
}
class myButtonListener implements ActionListener
{
@Override
public void actionPerformed(ActionEvent e) {
String nameButton = e.getActionCommand();
if(nameButton.equals("jbt00")){
int i = 0, j = 0;
}
}
}
Thanks mọi người!
Bài liên quan
Lấy bằng tên biến của nó thôi
Dạ, em làm được rồi . Mới kiếm ra lúc chiều ạ