java图形用户之复选框与单选框、字体修改

package TextGUI;

//TestCheckRadio.java
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class TestCheckRadio extends JFrame implements ItemListener

{
              JCheckBox italic = new JCheckBox("斜体");
              JCheckBox bold = new JCheckBox("粗体");
              JRadioButton large = new JRadioButton("大字号");
              JRadioButton middle = new JRadioButton("中字号");
              JRadioButton small = new JRadioButton("小字号"); 
              JTextArea area = new JTextArea();
              TestCheckRadio()

              {
                       ButtonGroup group = new ButtonGroup();
                       group.add(large);
                       group.add(middle);
                       group.add(small);

                       setLayout(new GridLayout(1, 2, 10, 0));

                       JPanel left = new JPanel();
                       left.setLayout(new GridLayout(5, 1, 0, 10));
                       left.add(italic);
                       left.add(bold);
                       left.add(large);
                       left.add(middle);
                       left.add(small);
                       add(left);

                       add(area);

                       Font font = new Font("", 0, 25);
                       area.setFont(font);
                       area.setText("我喜欢C++,\n但更喜欢Java");

                       italic.addItemListener(this);
                       bold.addItemListener(this);
                       large.addItemListener(this);
                       middle.addItemListener(this);
                       small.addItemListener(this);

                       setSize(500, 200);
                       setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
                       setVisible(true);
 }
 public void itemStateChanged(ItemEvent e)

 {
              int size = 25;
              if (small.isSelected())
                      size = 15;
              if (large.isSelected())
                      size = 35;
              int type = 0;
              if (italic.isSelected())
                        type = type + Font.ITALIC;
              if (bold.isSelected())
                        type = type + Font.BOLD;
              Font font = new Font("", type, size);
              area.setFont(font);
      }           
      public static void main(String[] args)

      {
               new TestCheckRadio();
      }
}


单选框创建:JRadioButton large = new JRadioButton(“大字号”);
单选框创建以后,需要创建一个选框组,将单选框添加到这个组中,意味着在同一时刻,只能选中这个组中的一个选框;

ButtonGroup group = new ButtonGroup();
group.add(large);
group.add(middle);
group.add(small);

复选框创建:JCheckBox italic = new JCheckBox(“斜体”);
复选框创建之后,在同一时刻可以选中复选框的多个

改变字体大小以及格式

if (small.isSelected())
                      size = 15;
              if (large.isSelected())
                      size = 35;
              int type = 0;
              if (italic.isSelected())
                        type = type + Font.ITALIC;
              if (bold.isSelected())
                        type = type + Font.BOLD;
              Font font = new Font("", type, size);
              area.setFont(font);

字体大小可以直接设置,
字体形式可以直接用加的形式来改变;

判断选框是否被选中:
if (bold.isSelected())

注意
在修改字体之后 需要重新设置文本框中的子体,否则修改不生效
Font font = new Font("", type, size);
area.setFont(font);

你可能感兴趣的:(Java学习)