import java.awt.Container ; import java.awt.GridLayout ; import java.awt.event.WindowAdapter ; import java.awt.event.WindowEvent ; import javax.swing.JFrame ; import javax.swing.JPanel ; import javax.swing.JCheckBox ; import javax.swing.BorderFactory ; class MyCheckBox{ private JFrame frame = new JFrame("Welcome To MLDN") ; // 定义窗体 private Container cont = frame.getContentPane() ; // 得到窗体容器 private JCheckBox jcb1 = new JCheckBox("MLDN") ; // 定义一个复选框 private JCheckBox jcb2 = new JCheckBox("MLDNJAVA") ; // 定义一个复选框 private JCheckBox jcb3 = new JCheckBox("智囊团") ; // 定义一个复选框 private JPanel pan = new JPanel() ; public MyCheckBox(){ pan.setBorder(BorderFactory.createTitledBorder("请选择最喜爱的网站")) ; pan.setLayout(new GridLayout(1,3)) ; // 设置组件的排版 pan.add(this.jcb1) ; // 增加组件 pan.add(this.jcb2) ; // 增加组件 pan.add(this.jcb3) ; // 增加组件 cont.add(pan) ; // 将面板加入到容器之中 this.frame.setSize(330,80) ; this.frame.setVisible(true) ; // 设置可显示 this.frame.addWindowListener(new WindowAdapter(){ public void windowClosing(WindowEvent arg){ System.exit(1) ; } }) ; } } public class JCheckBoxDemo01{ public static void main(String args[]){ new MyCheckBox() ; } }
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 | import java.io.File ; import java.awt.Container ; import java.awt.GridLayout ; import java.awt.event.WindowAdapter ; import java.awt.event.WindowEvent ; import java.awt.event.ItemListener ; import java.awt.event.ItemEvent ; import javax.swing.JFrame ; import javax.swing.ImageIcon ; import javax.swing.JPanel ; import javax.swing.JCheckBox ; import javax.swing.BorderFactory ; class MyItemListener implements ItemListener{ private String right = "d:" + File.separator + "right.png" ; private String wrong = "d:" + File.separator + "wrong.gif" ; public void itemStateChanged(ItemEvent e){ // 不管如何操作,则肯定由JCheckBox产生事件 JCheckBox jcb = (JCheckBox)e.getItem() ; // 得到产生的事件 if (jcb.isSelected()){ // 如果被选中了,则显示正确的图片 jcb.setIcon( new ImageIcon(right)) ; } else { jcb.setIcon( new ImageIcon(wrong)) ; } } } class MyCheckBox{ private String wrong = "d:" + File.separator + "wrong.gif" ; private JFrame frame = new JFrame( "Welcome To MLDN" ) ; // 定义窗体 private Container cont = frame.getContentPane() ; // 得到窗体容器 private JCheckBox jcb1 = new JCheckBox( "MLDN" , new ImageIcon(wrong)) ; // 定义一个复选框 private JCheckBox jcb2 = new JCheckBox( "MLDNJAVA" , new ImageIcon(wrong)) ; // 定义一个复选框 private JCheckBox jcb3 = new JCheckBox( "智囊团" , new ImageIcon(wrong)) ; // 定义一个复选框 private JPanel pan = new JPanel() ; public MyCheckBox(){ pan.setBorder(BorderFactory.createTitledBorder( "请选择最喜爱的网站" )) ; pan.setLayout( new GridLayout( 1 , 3 )) ; // 设置组件的排版 pan.add( this .jcb1) ; // 增加组件 pan.add( this .jcb2) ; // 增加组件 pan.add( this .jcb3) ; // 增加组件 jcb1.addItemListener( new MyItemListener()) ; jcb2.addItemListener( new MyItemListener()) ; jcb3.addItemListener( new MyItemListener()) ; cont.add(pan) ; // 将面板加入到容器之中 this .frame.setSize( 330 , 80 ) ; this .frame.setVisible( true ) ; // 设置可显示 this .frame.addWindowListener( new WindowAdapter(){ public void windowClosing(WindowEvent arg){ System.exit( 1 ) ; } }) ; } } public class JCheckBoxDemo02{ public static void main(String args[]){ new MyCheckBox() ; } } |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通