Java基础(Swing组件之动作事件监听器)
例如:
package Swing组件; import javax.swing.*; import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; public class Demo12 extends JFrame { public Demo12(){ Container c =getContentPane(); setBounds(100,100,500,100); setDefaultCloseOperation(EXIT_ON_CLOSE); setVisible(true); JPanel centerP = new JPanel(); centerP.setLayout(new FlowLayout()); c.add(centerP,BorderLayout.CENTER); JPanel southP = new JPanel(); JLabel console = new JLabel("点击组件"); southP.add(console); c.add(southP,BorderLayout.SOUTH); JButton btn = new JButton("按钮"); centerP.add(btn); btn.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { console.setText("按钮被点击"); } }); JTextField jt = new JTextField(10); centerP.add(jt); jt.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { Object obj = e.getSource(); //返回obj对象值 JTextField jtTmp =(JTextField)obj; //强制转化为文本框 System.out.println(jtTmp.getText()); console.setText("文本框中点击了回车"); } }); JCheckBox jc = new JCheckBox("多选框"); centerP.add(jc); jc.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { console.setText("多选框被点击"); } }); JRadioButton jr = new JRadioButton("单选框"); centerP.add(jr); jr.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { console.setText("单选框被点击"); } }); String values[] = { "选项1","选项2","选项3"}; JComboBox jb = new JComboBox(values); centerP.add(jb); jb.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { console.setText("下拉列表被选择"); } }); c.validate(); //重新验证一下容器中的组件 } public static void main(String[] args) { new Demo12(); } }
运行结果:
下一篇:
在矩形框内生成随机圆