buttontest.java

来自「Java2核心技术卷一 配套源码,看了还不错」· Java 代码 · 共 63 行

JAVA
63
字号
/**
 * @version 1.10 25 Mar 1997
 * @author Cay Horstmann
 */

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

class ButtonPanel extends JPanel 
   implements ActionListener
{  public ButtonPanel()
   {  yellowButton = new JButton("Yellow");
      blueButton = new JButton("Blue");
      redButton = new JButton("Red");

      add(yellowButton);
      add(blueButton);
      add(redButton);

      yellowButton.addActionListener(this); 
      blueButton.addActionListener(this); 
      redButton.addActionListener(this); 
   }

   public void actionPerformed(ActionEvent evt)
   {  Object source = evt.getSource();
      Color color = getBackground();
      if (source == yellowButton) color = Color.yellow;
      else if (source == blueButton) color = Color.blue;
      else if (source == redButton) color = Color.red;
      setBackground(color);
      repaint();
   }

   private JButton yellowButton;
   private JButton blueButton;
   private JButton redButton; 
}


class ButtonFrame extends JFrame
{  public ButtonFrame()
   {  setTitle("ButtonTest");
      setSize(300, 200);
      addWindowListener(new WindowAdapter()
         {  public void windowClosing(WindowEvent e)
            {  System.exit(0);
            }
         } );

      Container contentPane = getContentPane();
      contentPane.add(new ButtonPanel());
   }
}

public class ButtonTest
{  public static void main(String[] args)
   {  JFrame frame = new ButtonFrame();
      frame.show();  
   }
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?