代码:
1 package unit13; 2 import javax.swing.*; 3 4 import java.awt.Color; 5 import java.awt.FlowLayout; 6 import java.awt.Font; 7 import java.awt.event.ItemEvent; 8 import java.awt.event.ItemListener; 9 public class app3 extends JFrame implements ItemListener { 10 11 static app3 frm=new app3(); 12 static JCheckBox chk1=new JCheckBox("粗体"); 13 static JCheckBox chk2=new JCheckBox("斜体"); 14 15 static JRadioButton tb1=new JRadioButton("红色"); 16 static JRadioButton tb2=new JRadioButton("蓝色"); 17 18 static JTextArea ta=new JTextArea("选项事件类ItemEvent的使用方法",8,30); 19 20 public static void main(String[] args) { 21 // TODO 自动生成的方法存根 22 ButtonGroup grp=new ButtonGroup(); 23 frm.setTitle("xuanxiangshijianchuli"); 24 frm.setSize(500,400); 25 frm.setLocation(200,150); 26 frm.setLayout(new FlowLayout(FlowLayout.LEFT)); 27 28 grp.add(tb1); 29 grp.add(tb2); 30 31 chk1.addItemListener(frm); 32 chk2.addItemListener(frm); 33 34 tb1.addItemListener(frm); 35 36 tb2.addItemListener(frm); 37 38 frm.add(chk1); 39 frm.add(chk2); 40 frm.add(tb1); 41 frm.add(tb2); 43 frm.add(ta); 44 frm.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 45 frm.setVisible(true); 47 } 49 @Override 50 public void itemStateChanged(ItemEvent e) { 51 // TODO 自动生成的方法存根 52 Font font1=ta.getFont(); 53 int style1=font1.getStyle(); 54 55 if(tb1.isSelected()) 56 ta.setForeground(Color.red); 57 if(tb2.isSelected()) 58 ta.setForeground(Color.blue); 59 60 if((e.getSource()==chk1)||(e.getSource()==chk2)) 61 { 62 if(e.getSource()==chk1) 63 { 64 style1=style1^1; 65 } 66 if(e.getSource()==chk2) 67 { 68 style1=style1^2; 69 } 70 ta.setFont(new Font(font1.getName(),style1,font1.getSize())); 71 ta.append("\n样式style="+style1+";"+"状态:"+e.getStateChange()+"1.选中 2.取消"); 73 } 78 } 79 80 }
时间: 2024-09-29 08:05:01