ActionListener 一般是 inner class,不是 private class,你可以删掉private,就可以了 并且与你监听对象写在一个class里面就可以了 。
我的理解。
我的理解。
解决方案 »
- Swing低级问题: Jtree 中 DefaultMutableTreeNode.setUserObject(myobj)后不起作用
- java 序列化成字符串怎么弄 不想要文件
- 关于 java调用第三方动态库问题
- 小小命令的困惑..............
- 线程问题
- 问题如下,高手帮助解决一下!
- 关于JBuilder的小问题(up有分)
- jdbc连informix 时出现如下错误:Encoding or code set not supported
- 本人用JAVA连接MYSQL,但在JAVA里往MYSQL插入中文数据就是乱码?
- 再加00分,一共200分,是下面提过的问题
- 有几道练习题不懂,请教大家,谢谢。
- 用jslider指示温度,能让它显示成红色吗,象温度计一样?
jobChoose.addItemListener(new ItemListener(){
public void itemStateChanged(ItemEvent e){
if(e.getStateChange() == e.SELECTED){
jText.setText(e.getItem().toString());
}
}
});
import java.awt.event.*;
import javax.swing.*;
import javax.swing.event.*;public class ComboBoxTest
{
public static void main(String[] args)
{
ComboBoxFrame frame = new ComboBoxFrame();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.show();
}
}
class ComboBoxFrame extends JFrame{
public ComboBoxFrame(){
setSize(300,300);
Container contentPane=getContentPane();
JPanel jTPanel= new JPanel();
jobChoose=new JComboBox();
jobChoose.setEditable(true);
for(int i=0;i<6;i++){
jobChoose.addItem("Choose the job "+i);
}
jobChoose.addActionListener(new ComboxListenera());
JLabel jLabel1=new JLabel("Please choose the job");
JLabel jLabel2=new JLabel("Your choose is :");
chooses=new JTextField("",20);
jTPanel.add(jLabel1);
jTPanel.add(jobChoose);
jTPanel.add(jLabel2);
jTPanel.add(chooses);
contentPane.add(jTPanel);
}
private class ComboxListenera implements ActionListener{
public void actionPerformed(ActionEvent e){
Object chooseItem=jobChoose.getSelectedItem();
String st=(String)chooseItem;
chooses.setText(st); }
}
private JComboBox jobChoose;
private JTextField chooses;
}
public static void main(String[] args) {
ComboBoxFrame frame = new ComboBoxFrame();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.show();
}
}class ComboBoxFrame
extends JFrame {
private JTextField chooese;
private JComboBox jobChoose;
public ComboBoxFrame() {
setSize(300, 300);
Container contentPane = getContentPane(); JPanel jTPanel = new JPanel();
jobChoose = new JComboBox();
jobChoose.setEditable(true);
for (int i = 0; i < 6; i++) {
jobChoose.addItem("Choose the job " + i);
}
JLabel jLabel1 = new JLabel("Please choose the job");
JLabel jLabel2 = new JLabel("Your choose is :");
chooese = new JTextField("", 20);
jTPanel.add(jLabel1);
jTPanel.add(jobChoose);
jTPanel.add(jLabel2);
jTPanel.add(chooese);
contentPane.add(jTPanel); jobChoose.addItemListener(new ItemListener() {
public void itemStateChanged(ItemEvent e) {
if (e.getStateChange() == e.SELECTED) {
chooese.setText(e.getItem().toString());
}
}
}); }}