码迷,mamicode.com
首页 > 编程语言 > 详细

Java Swing应用程序 JComboBox下拉框联动查询

时间:2017-04-17 14:21:37      阅读:222      评论:0      收藏:0      [点我收藏+]

标签:分享   div   stat   swing   com   item   query   伪代码   target   

在web项目中,通过下拉框、JQuery和ajax可以实现下拉框联动查询。

譬如说,当你查询某个地方时,页面上有:省份:<下拉框省份> 市区:<下拉框市区> 县乡:<下拉框县乡> 街道:<街道下拉框> 查询

譬如说,你选择了省:江苏省,那么在市区中只会显示江苏省的市区

譬如:(网上的图)

技术分享

具体详细实现可以参考,写得挺好的:http://blog.csdn.net/sinat_24491773/article/details/50810471

 

那么在swing窗体怎么实现联动查询呢?

其实也很简单,想想web方面的实现过程,无非是在第一个省份的下拉框选择之后,设置监听事件,然后使用ajax去得到后边下拉框的数据,然后更新之即可

那么基于这么想法,swing不就也可以了么?

1.jcombobox设置添加ItemListener事件;

2.重写ItemListener的itemStateChanged方法;

3.清空后续下拉框的原始数据;

4.重新设置后续下拉框的原始数据。

代码如下:

jcb_college.addItemListener(new ItemListener() {//为college下拉框设置监听器
    @Override
	public void itemStateChanged(ItemEvent e) {
		jcb_grade.removeAllItems();//清除该下拉框的原始数据,
		jcb_grade.setModel(new DefaultComboBoxModel<>(getField(ConstantData.Grade)));//获得新的数据
		jcb_class.removeAllItems();
		jcb_class.setModel(new DefaultComboBoxModel<>(getField(ConstantData.Class)));
	}
});

 上述代中的getField()方法就是从数据库中获取选择的college下的年级和班级

伪代码如下:

1.获取college下拉框选择的数据;
   selected =    jcb_college.getSelect(); 
2.从数据库中获得selected的college所有的年级
    select grade from grade where college == selected;

 引用上述bolg中博主的总结:其实都一样,自己做出来的还是很开心的。

 

Java Swing应用程序 JComboBox下拉框联动查询

标签:分享   div   stat   swing   com   item   query   伪代码   target   

原文地址:http://www.cnblogs.com/kingkangstudy/p/6722452.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!