8.2 按鈕控件
圖8-1中有一個AbstractButton類,該類是Swing中所有按鈕的父類,該類的三個直接派生類JButton、JToggleButton和JMenuItem。
JButton與AWT中的Button類似,JButton有一個直接子類為BasicArrowButton,是一個帶有箭頭的按鈕(箭頭有上、下、左、右四個方向)。
JToggleButton表示一個切換按鈕,該類有兩個直接子類是我們經(jīng)常使用到的,JRadioButton—單選按鈕和JCheckBox—復(fù)選按鈕。
JMenuItem包括三個直接子類,它們都是與菜單相關(guān)的按鈕。
程序[例8-3]演示了各個按鈕的用法。
[8-3]
import java.awt.*;
import javax.swing.*;
import javax.swing.plaf.basic.BasicArrowButton;
import java.awt.event.*;
class ButtonsTest extends JFrame{
private JButton jbutton = new JButton("JButton");
private BasicArrowButton
basicArrowButtonUp= new BasicArrowButton(BasicArrowButton.NORTH),
basicArrowButtonDown= new BasicArrowButton(BasicArrowButton.SOUTH),
basicArrowButtonLeft= new BasicArrowButton(BasicArrowButton.WEST),
basicArrowButtonRight= new BasicArrowButton(BasicArrowButton.EAST);
private JToggleButton jtoggleButton = new JToggleButton("JToggleButton");
private JCheckBox jcheckBox = new JCheckBox("JCheckBox");
private JRadioButton jradioButton = new JRadioButton("JRadioButton");
public ButtonsTest(String title){
super(title);
Container contentPane = this.getContentPane();
contentPane.setLayout(new FlowLayout(5));
contentPane.add(jbutton);
contentPane.add(basicArrowButtonUp);
contentPane.add(basicArrowButtonDown);
contentPane.add(basicArrowButtonLeft);
contentPane.add(basicArrowButtonRight);
contentPane.add(jtoggleButton);
contentPane.add(jcheckBox);
contentPane.add(jradioButton);
this.pack();
this.setVisible(true);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
public class Test8_3 {
public static void main(String[] args) {
new ButtonsTest("java各種按鈕測試");
}
}