📄 innerclasseventuse.java
字号:
package chapter11;
//ComboBoxExample.java
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.event.*;
public class InnerClassEventUse extends JFrame
{
public static final int WIDTH = 300;
public static final int HEIGHT = 150;
public static final JLabel choosedLabel=new JLabel("出生月份为:");
public static final JLabel choiceLabel=new JLabel("选择出生的月份:");
private JTextField myTextField;
private JComboBox monthBox;
private JPanel monthPanel;
public InnerClassEventUse()
{
setTitle("ComboBoxExample");
setSize(WIDTH, HEIGHT);
Container contentPane = getContentPane();
//建立面板
monthPanel = new JPanel();
//新建JComboBox
monthBox = new JComboBox();
monthBox.setEditable(true);;
monthBox.addItem("一月");
monthBox.addItem("二月");
monthBox.addItem("三月");
monthBox.addItem("四月");
monthBox.addItem("五月");
monthBox.addItem("六月");
monthBox.addItem("七月");
monthBox.addItem("八月");
monthBox.addItem("九月");
monthBox.addItem("十月");
monthBox.addItem("十一月");
monthBox.addItem("十二月");
//增加事件监听器
monthBox.addActionListener(new jobsListener());
monthPanel.add(choiceLabel);
monthPanel.add(monthBox);
//建立容纳JTextField的面板
JPanel textPanel = new JPanel();
//新建JTextField
myTextField = new JTextField("", 15);
textPanel.add(choosedLabel, BorderLayout.NORTH);
textPanel.add(myTextField, BorderLayout.CENTER);
contentPane.add(monthPanel, BorderLayout.NORTH);
contentPane.add(textPanel, BorderLayout.CENTER);
}
//内部类实现事件监听器
private class jobsListener
implements ActionListener
{
public void actionPerformed(ActionEvent event)
{
StringBuffer tempSeletedText = new StringBuffer("");
Object selectedJob = monthBox.getSelectedItem();
String str = (String)selectedJob;
tempSeletedText.append(str);
myTextField.setText(tempSeletedText.toString());
}
}
public static void main(String[] args)
{
InnerClassEventUse frame = new InnerClassEventUse();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -