java关于如何给下拉列表框内的元素加上监听器获取其内容
本测试代码采用JFrame模块
全代码:
import javax.swing.*; import java.awt.event.ItemListener; import java.awt.event.ItemEvent; import java.awt.*; import java.awt.event.ActionListener; import java.awt.event.ActionEvent; public class da1 extends JFrame{ public da1() { setLayout(null); setTitle("JFrame结课"); Container c = getContentPane(); //文本显示框 JTextField jt1 = new JTextField(); JTextField jt2 = new JTextField(); jt1.setBounds(150, 220, 100, 50); jt2.setBounds(150, 280, 100, 50); c.add(jt1); c.add(jt2); //颜色下拉框 String[] b1 = new String[]{"红色","蓝色","绿色"}; final JComboBox<String> lib = new JComboBox<String>(b1); lib.setBounds(150, 10, 100, 50); c.add(lib); lib.addItemListener(new ItemListener() { //开始itemStateChanged方法,该方法在选择一种颜色时自动调用 public void itemStateChanged(ItemEvent e) { //首先获得选择的列表的索引号 int index = lib.getSelectedIndex(); //判断所选的内容 switch (index) { case 0: //红 jt1.setText("红"); break; case 1: //蓝 jt1.setText("蓝"); break; case 2: //绿 jt1.setText("绿"); break; default: //其它情况 break; } } }); // 事件监听添加完成 //男女单选框 JRadioButton db1 = new JRadioButton("男"); JRadioButton db2 = new JRadioButton("女"); ButtonGroup bu1 = new ButtonGroup(); db1.setBounds(150, 80, 50, 20); db2.setBounds(150, 110, 50, 20); bu1.add(db1); bu1.add(db2); db1.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { jt2.setText(""); jt2.setText("男"); } }); db2.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { jt2.setText(""); jt2.setText("女"); } }); c.add(db1); c.add(db2); //确认取消按钮 JButton jb1 = new JButton("确认"); JButton jb2 = new JButton("取消"); jb1.setBounds(80, 160, 100, 50); jb2.setBounds(190, 160, 100, 50); jb1.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { String s=jt1.getText().toString(); System.out.println(s); String s1=jt2.getText().toString(); System.out.println(s1); JOptionPane.showMessageDialog(null, "提交成功"); } }); c.add(jb1); c.add(jb2); setBounds(800,300,400,400); setVisible(true); } public static void main(String args[]) { new da1(); } }
核心代码:
lib.addItemListener(new ItemListener()//添加选择监听事件 { //开始itemStateChanged方法,该方法在选择一种颜色时自动调用 public void itemStateChanged(ItemEvent e) { //首先获得选择的列表的索引号 int index = lib.getSelectedIndex(); //判断所选的内容 switch (index) { case 0: //红 jt1.setText("红"); break; case 1: //蓝 jt1.setText("蓝"); break; case 2: //绿 jt1.setText("绿"); break; default: //其它情况 break; } } }); // 事件监听添加完成
监听所得到的内容将添加到文本框内
代码运行截图:
本次说明到此结束,小弟第一次写博客,如果能帮助到看官,麻烦点下赞是对小弟莫大的支持,如有什么问题,欢迎评论留言
原文:https://www.cnblogs.com/wandn/p/13034309.html