案例代码:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class Example8_14 extends JFrame {
private JCheckBox italic;
private JCheckBox bold;
private JLabel label;
public Example8_14(){
//创建一个JLabel标签,居中对齐
label = new JLabel("来改变字体形态",JLabel.CENTER);
label.setFont(new Font("宋体",Font.PLAIN,20));//设置标签文本的字体
this.add(label);//在 CENTER域添加标签
JPanel panel = new JPanel();//创建一个 JPanel面板
//创建两个JcheckBox复选框
italic = new JCheckBox("字体倾斜");
bold = new JCheckBox("字体加粗");
//为复选框定义ActionListener监听器
ActionListener listener = new ActionListener(){
public void actionPerformed(ActionEvent e){
int mode = 0;
if(bold.isSelected())
mode += Font.BOLD;
if(italic.isSelected())
mode += Font. ITALIC;
label.setFont(new Font("宋体",mode, 20));
}
};
//为复选框分别添加监听器
italic.addActionListener(listener);
bold.addActionListener(listener);//在 JPane1面板中添加复选框
panel.add(italic);
panel.add(bold);
this.add(panel, BorderLayout. SOUTH);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setSize(300,300);
this.setVisible(true);
}
public static void main(String[]args){
new Example8_14();
}
}
案例运行图: