是强人的帮小弟看一下程序,详细分析给我听,好嘛!
//ComboBoxText.java
import java.awt.*;
//import java.awt.FlowLayout;
import java.awt.event.*;
//import java.awt.event.ActionEvent;
//import java.awt.event.ActionListener;
import javax.swing.*;
//import javax.swing.JComboBox;
//import javax.swing.JFrame;
class ComboBoxText extends Frame
{
private String[][] xxx = {
{"信息工程学院","软件工程","计算机科学与技术","电子信息工程","网络工程","通信工程","光信息科学与技术"},
{"外语外贸学院","英语","国际经济与贸易","日语"},
{"材料与化学工程学院","金属材料工程","冶金工程","稀土工程","无机非金属材料工程","化学工程与工艺","材料化学","生物工程","材料物理","材料成型及控制工程"},
{"机电工程学院","自动化","机械工程及自动化","电气工程及其自动化","测控技术与仪器","工业工程","交通工程","电子科学与技术"},
{"资源与环境工程学院","采矿工程","矿物加工工程","安全工程","环境工程","地质工程"},
{"文法学院","法学","政治学与行政学","艺术设计","工业设计","广告学","数字媒体艺术","对外汉语"},
{"经济管理学院","工程管理","会计学","工商管理","金融学","电子商务"},
{"理学院","信息与计算科学","数学与应用数学","电子信息科学与技术","社会体育"},
{"建筑与测绘工程学院","土木工程","测绘工程","地理信息系统","城市规划","给水排水工程","资源环境与城乡规划管理","建筑环境与设备工程"}
};
private Object[] a(){
Object[] os = new Object[xxx.length];
for(int i=0; i<xxx.length; i++){
os[i]=xxx[i][0];
}
return os;
}
private Object[] b(Object a){
for(int i=0; i<xxx.length; i++){
if(xxx[i][0].equals(a)){
Object[] o = new Object[xxx[i].length-1];
for(int j=0; j<o.length; j++)
o[j]=xxx[i][j+1];
return o;
}
}
return new Object[]{};
}
public static void main(String[] args)
{
final ComboBoxText ct = new ComboBoxText();
final JComboBox ca = new JComboBox(ct.a());
final JComboBox cb = new JComboBox();
ca.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e) {
cb.removeAllItems();
Object selected = ca.getSelectedItem();
Object[] newItems = ct.b(selected);
for(int i=0; i<newItems.length; i++)
cb.addItem(newItems[i]);
}
});
ca.setSelectedIndex(-1);
JFrame f = new JFrame("江西理工大学查询系统");f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JPanel panel=new JPanel();
f.getContentPane().setLayout(new FlowLayout(FlowLayout.CENTER));
f.add(ca);f.add(cb);f.setVisible(true);
f.setSize(400,400);
}
}
强人,如果你诚心的话,帮小弟把那红色的代码仔细看一下,并且详细的分析给我听,好嘛,
这段程序,我要搞清楚,因为本人正在编写相关类型的代码,
谢谢了!