您的位置:首页 > 编程语言 > Java开发

java中jcombobox的联动

2015-12-23 00:00 477 查看
网上找了很久,java做的几乎很少,于是自己动手做了一下。可能还是有点问题吧。

package com.zhong.panel;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;

import javax.swing.JButton;
import javax.swing.JComboBox;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JTextField;

import com.zhong.DAO.MemberDao;
import com.zhong.tools.TableModel;
public class MemberAddPanel extends JFrame{

/**
* 添加会员的面板
*/
private static final long serialVersionUID = 1L;

private JLabel lb_name;
private JLabel lb_tel;
private JTextField tf_name;
private JTextField tf_tel;
private JButton btn_save;
private JButton btn_exit;
private JComboBox<?> cb_pro;
private JComboBox<String> cb_city;
private MemberDao member;
private TableModel tabmodel;

public MemberAddPanel(TableModel tabmodel){
this.tabmodel = tabmodel;
this.setTitle("添加会员信息");
init();
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setLayout(null);
this.setBounds(0, 0, 350, 600);
this.setResizable(false);
this.setLocationRelativeTo(null);
this.setVisible(true);
}

public void init(){
member = new MemberDao();
lb_name = new JLabel("会员名:");
lb_tel = new JLabel("会员电话:");
tf_name = new JTextField();
tf_tel = new JTextField();
btn_save = new JButton("保存");
btn_exit = new JButton("退出");
lb_name.setBounds(50,70,80,40);
this.add(lb_name);
tf_name.setBounds(150,70,100,30);
this.add(tf_name);
lb_tel.setBounds(50,110,80,40);
this.add(lb_tel);
tf_tel.setBounds(150,110,100,30);
this.add(tf_tel);
btn_exit.setBounds(50,510,80,30);
this.add(btn_exit);
btn_save.setBounds(230,510,80,30);
this.add(btn_save);
btn_exit.addActionListener(new ActionListener(){

@Override
public void actionPerformed(ActionEvent arg0) {
// TODO Auto-generated method stub
exit();
}

});
btn_save.addActionListener(new ActionListener(){

@Override
public void actionPerformed(ActionEvent arg0) {
// TODO Auto-generated method stub
save();
}

});
String pro[] = {"江苏","浙江","上海","山东","安徽"};
cb_pro = new JComboBox<Object>(pro);
cb_city = new JComboBox<String>();
String city1[] = {"南京","淮安","苏州","常州"};
String city2[] = {"杭州","宁波","温州","绍兴"};
String city3[] = {"黄浦区","虹口区","嘉定区","长宁区"};
String city4[] = {"芜湖","安庆","马鞍山","铜陵"};
cb_pro.setBounds(100, 150, 100, 30);
this.add(cb_pro);
cb_pro.addItemListener(new ItemListener() {

@SuppressWarnings("static-access")
@Override
public void itemStateChanged(ItemEvent e) {
// TODO Auto-generated method stub
if(e.getStateChange() == e.SELECTED){
int id = cb_pro.getSelectedIndex();
switch(id){
case 0:
addshow(city1);
break;
case 1:
addshow(city2);
break;
case 2:
addshow(city3);
break;
case 3:
addshow(city4);
break;
}
}
}

});
cb_city.setBounds(100, 190, 100, 30);
this.add(cb_city);
}

// public static void main(String args[]){
//  new MemberAddPanel();
// }

public void addshow(String[] str){
cb_city.removeAllItems();
for(int i = 0 ; i < str.length ; i++){
cb_city.addItem(str[i]);
}
}

public void save(){
if(member.add("insert into Register(mname,mtel,madd) values('"+tf_name.getText()+"','"+tf_tel.getText()+"','"+" '"+")")){
returnmember();
}
}

public void returnmember(){
Object[] obj = new Object[3];
obj[0] = tf_name.getText();
obj[1] = tf_tel.getText();
obj[2] = " ";
tabmodel.addRow(obj);
}

public void exit(){
this.dispose();
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  jcombobox 三级联动