我目前有一個類框架,創建一個框架,添加按鈕和標籤。我目前在我的Frame類中有動作偵聽器的代碼,我需要將其移動,以便從匿名類調用動作偵聽器。這是我現在擁有的。如何在匿名類中創建Action Listener?
public static void main(String[] args)
{
Frame grid = new Frame();
grid.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
grid.setVisible(true);
grid.pack();
grid.setTitle("Frame");
}
public class Frame extends JFrame
{
ImageIcon green = new ImageIcon("green.png");
JLabel label;
public JButton button1,button2;
public Frame()
{
setLayout(new GridLayout(4,4));
/**create buttons*/
button1 = new JButton("");
add(button1);
button2 = new JButton("");
add(button2);
label = new JLabel(green);
add(label);
/**Add action listener to buttons, I need these 2 liseners in a anonymous class */
button1.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent arg0)
{
button1.setText("X");
}
});
button2.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent arg0)
{
button2.setText("X");
}
});
任何人都可以告訴我如何移動這個動作偵聽器,以便它從匿名類中調用嗎?我是否假設我在創建框架時主要執行此操作?這樣的事情可能嗎?
Frame grid = new Frame(){
//Code might go here?
}
我不確定,我是新的匿名類。任何人都可以告訴我如何在一個匿名類中實現動作偵聽器嗎?
您需要提供一些手段,通過該'ActionListener'可以或許通過一個getter或setter – MadProgrammer