checkboxtest.java

来自「生产者消费者 生产者消费者」· Java 代码 · 共 72 行

JAVA
72
字号
/**
 * @version 1.20 27 Jun 1998
 * @author Cay Horstmann
 */

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

class CheckBoxFrame extends JFrame 
   implements ActionListener
{  public CheckBoxFrame()
   {  setTitle("CheckBoxTest");
      setSize(300, 200);
      addWindowListener(new WindowAdapter()
         {  public void windowClosing(WindowEvent e)
            {  System.exit(0);
            }
         } );
         
      JPanel p = new JPanel();
      bold = addCheckBox(p, "Bold");    
      italic = addCheckBox(p, "Italic");    
      getContentPane().add(p, "South");
      panel = new CheckBoxTestPanel();
      getContentPane().add(panel, "Center");
   }
   
   public JCheckBox addCheckBox(JPanel p, String name)
   {  JCheckBox c = new JCheckBox(name);
      c.addActionListener(this);
      p.add(c);
      return c;
   }
   
   public void actionPerformed(ActionEvent evt)
   {  int m = (bold.isSelected() ? Font.BOLD : 0) 
         + (italic.isSelected() ? Font.ITALIC : 0);
      panel.setFont(m);
   }
 
   private CheckBoxTestPanel panel;
   private JCheckBox bold;
   private JCheckBox italic;        
}

class CheckBoxTestPanel extends JPanel
{  public CheckBoxTestPanel() 
   { setFont(Font.PLAIN); 
   }

   public void setFont(int m)
   {  setFont(new Font("SansSerif", m, 12));
      repaint();
   }

   public void paintComponent(Graphics g)
   {  super.paintComponent(g); 
      g.drawString
         ("The quick brown fox jumps over the lazy dog.", 
         0, 50);
   }
}

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

⌨️ 快捷键说明

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