import java.awt.Color;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.BorderFactory;
import javax.swing.ButtonGroup;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JRadioButton;
import javax.swing.border.Border;
public class BorderFrame extends JFrame{
private JPanel buttonPanel;
private JPanel demoPanel;
private ButtonGroup buttonGroup;
private final Border border = BorderFactory.createEmptyBorder();
public BorderFrame() {
buttonPanel = new JPanel();
demoPanel = new JPanel();
buttonGroup = new ButtonGroup();
addRadioButton("Lowered bevel",BorderFactory.createLoweredBevelBorder());
addRadioButton("Raised bevel",BorderFactory.createRaisedBevelBorder());
addRadioButton("Etched",BorderFactory.createEtchedBorder());
addRadioButton("Line",BorderFactory.createLineBorder(Color.BLUE));
addRadioButton("Matte",BorderFactory.createMatteBorder(10, 10, 10, 10, Color.BLUE));
addRadioButton("Empty",BorderFactory.createEmptyBorder());
Border etched = BorderFactory.createEtchedBorder();
Border titleBorder = BorderFactory.createTitledBorder(etched, "Boder types");
buttonPanel.setBorder(titleBorder);
this.setLayout(new GridLayout(2,1));
this.add(buttonPanel);
this.add(demoPanel);
this.setLocation(300, 400);
this.pack();
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setVisible(true);
}
private void addRadioButton(String buttonName, final Border border) {
boolean state = false;
if(border == this.border) state = true;
JRadioButton button = new JRadioButton(buttonName,state);
button.addActionListener(new ActionListener(){
@Override
public void actionPerformed(ActionEvent e) {
demoPanel.setBorder(border);
}
});
buttonGroup.add(button);
buttonPanel.add(button);
}
public static void main(String[] args) {
new BorderFrame();
}
}
單選框以及邊框
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.