Java基础知识:Java实现Map集合二级联动4
comboBox.setModel(new DefaultComboBoxModel(getProvince())); // 添加省份信息
final JLabel label = new JLabel();
label.setText("省/直辖市");
label.setBounds(155, 30, 66, 18);
panel.add(label);
final JLabel label_1 = new JLabel();
label_1.setText("市/县");
label_1.setBounds(375, 30, 37, 18);
panel.add(label_1);
final JLabel label_2 = new JLabel();
label_2.setBounds(36, 43, 65, 18);
backgroundPanel.add(label_2);
label_2.setHorizontalAlignment(SwingConstants.RIGHT);
label_2.setHorizontalTextPosition(SwingConstants.LEADING);
label_2.setText("姓 名:");
textField = new JTextField();
textField.setBounds(113, 38, 154, 28);
backgroundPanel.add(textField);
final JLabel label_3 = new JLabel();
label_3.setBounds(36, 84, 65, 18);
backgroundPanel.add(label_3);
label_3.setHorizontalAlignment(SwingConstants.RIGHT);
label_3.setHorizontalTextPosition(SwingConstants.LEADING);
label_3.setText("性 别:");
comboBox_1 = new JComboBox();
comboBox_1.setBounds(113, 81, 66, 25);
backgroundPanel.add(comboBox_1);
comboBox_1.setModel(new DefaultComboBoxModel(new String[] {"男", "女"}));
final JLabel label_4 = new JLabel();
label_4.setBounds(36, 212, 65, 18);
backgroundPanel.add(label_4);
label_4.setHorizontalAlignment(SwingConstants.RIGHT);
label_4.setHorizontalTextPosition(SwingConstants.LEADING);
label_4.setText("详细地址:");
textField_1 = new JTextField();
textField_1.setBounds(113, 208, 367, 28);
backgroundPanel.add(textField_1);
final JLabel label_4_1 = new JLabel();
label_4_1.setBounds(36, 252, 65, 18);
backgroundPanel.add(label_4_1);
label_4_1.setHorizontalTextPosition(SwingConstants.LEADING);
label_4_1.setHorizontalAlignment(SwingConstants.RIGHT);
label_4_1.setText("E-mail:");
textField_3 = new JTextField();
textField_3.setBounds(113, 248, 367, 27);
backgroundPanel.add(textField_3);
final JButton button = new JButton();
button.setBounds(159, 289, 75, 28);
backgroundPanel.add(button);
button.setText("保存");
final JButton button_1 = new JButton();
button_1.setBounds(265, 289, 75, 28);
backgroundPanel.add(button_1);
button_1.setText("重置");
//
}
/**
* 获取省、直辖市,自治区
*
* @return
*/
public Object[] getProvince() {
Map map = CityMap.model;// 获取省份信息保存到Map中
Set set = map.keySet(); // 获取Map集合中的键,并以Set集合返回
Object[] province = set.toArray(); // 转换为数组
return province; // 返回获取的省份信息
}
/**
* 获取指定省对应的市/县
*
* @param selectProvince
* @return
*/
public String[] getCity(String selectProvince) {
Map map = CityMap.model; // 获取省份信息保存到Map中
String[] arrCity = map.get(selectProvince); // 获取指定键的值
return arrCity; // 返回获取的市/县
}
private void itemChange() {
String selectProvince = (String) comboBox.getSelectedItem();
cityComboBox.removeAllItems(); // 清空市/县列表
String[] arrCity = getCity(selectProvince); // 获取市/县
cityComboBox.setModel(new DefaultComboBoxModel(arrCity)); // 重新添加市/县列表的值
}
}
效果如图:
Java基础知识:Java实现Map集合二级联动4的更多相关文章
- Java基础知识:Java实现Map集合二级联动1
Java实现Map集合二级联动 Map集合可以保存键值映射关系,这非常适合本实例所需要的数据结构,所有省份信息可以保存为Map集合的键,而每个键可以保存对应的城市信息,本实例就是利用Map集合实现了省 ...
- JAVA基础知识|java虚拟机(JVM)
一.JVM简介 java语言是跨平台的,兼容各种操作系统.实现跨平台的基石就是虚拟机(JVM),虚拟机不是跨平台的,所以不同的操作系统需要安装不同的jdk版本(jre=jvm+类库:jdk=jre+开 ...
- Java基础知识:Java实现Map集合二级联动2
2. 定义获取省份的方法,创建一个Map集合,将上一步得到的映射集合赋值给它,使用Map集合的keySet()方法获取该集合中的所有键对象组成的Set 集合,即为省分集合,创建一个Object型一维数 ...
- Java实现Map集合二级联动
Map集合可以保存键值映射关系,这非常适合本实例所需要的数据结构,所有省份信息可以保存为Map集合的键,而每个键可以保存对应的城市信息,本实例就是利用Map集合实现了省市级联选择框,当选择省份信息时, ...
- Java基础知识总结之类的集合
Java集合概述 1.集合类也叫作容器类.它的功能相当于一个容器.可以存储数量不确定的数据,以及保存具有映射关系的数据(也被称为关联数组). 2.Java的集合(容器),它是用来”装对象的“(实际上是 ...
- JAVA基础知识总结15(集合容器)
集合框架:用于存储数据的容器. 1:对象封装数据,对象多了也需要存储.集合用于存储对象. 2:对象的个数确定可以使用数组,但是不确定怎么办?可以用集合.因为集合是可变长度的. 集合和数组的区别: 1: ...
- java基础知识——Java的定义,特点和技术平台
(作者声明:对于Java编程语言,很多人只知道怎么用,却对其了解甚少.我也是其中一员.所以菜鸟的我,去查询了教科书以及大神的总结,主要参考了<Java核心技术>这本神作.现在分享给大家!) ...
- [java基础知识]java安装步骤
jre: java运行环境. jre = java虚拟机 + 核心类库(辅助java虚拟机运行的文件).如果只是运行java程序,只需要安装jre. jdk: java开发工具集 jd ...
- Java基础知识:Java实现Map集合二级联动3
* Returns an image stored in the file at the specified path * @param path String The path to the ima ...
随机推荐
- C++设计一个不能被继承的类
1. 方法一 将构造函数和析构函数设置为私有函数,重新定义公有的静态函数来创建和释放类. #include "stdafx.h" #include <iostream> ...
- java中NULL与" "的区别
null是没有地址""是有地址但是里面的内容是空的 null和""的区别 问题一: null和""的区别 String s=null; st ...
- linux内存管理--用户空间和内核空间
关于虚拟内存有三点需要注意: 4G的进程地址空间被人为的分为两个部分--用户空间与内核空间.用户空间从0到3G(0xc0000000),内核空间占据3G到4G.用户进程通常情况下只能访问用户空间的虚拟 ...
- javascript之promise
js语言的执行环境是"单线程",即一次只能执行一个任务,如果有多个任务的话,就需要排队,只有前面的一个任务执行结束了,再执行后面的一个任务.于是异步执行就变得非常重要,异步执行之后 ...
- iOS:cocoapods 配置相关(19-04-02更)
1.gem sources 2.libwebp 1.gem sources 因为,mac更新,cocoapods也要更新,使用下面指令,提示找不到.org,原因是淘宝的镜像源.org换成.com,所以 ...
- css模型框
在 CSS 中,width 和 height 指的是内容区域的宽度和高度.增加内边距.边框和外边距不会影响内容区域的尺寸,但是会增加元素框的总尺寸. 假设框的每个边上有 10 个像素的外边距和 5 个 ...
- php ajax confirm 删除
<button name="del" type="button" class="btn btn-primary btn-xs" id= ...
- conda与pip的关系
最近在搭建平台的时候,遇到了conda,具体尝试使用之后觉得conda还是非常好用的.他会交代清楚相互有依赖的包是什么,确认之后才会执行指令.要比pip好很多. 普通按照python 的时候一般都是自 ...
- python 装饰器和软件目录规范一
1.装饰器和迭代器的概念. 装饰器本质是一个函数,是为其他函数添加附加功能. 原则:不修改原函数源代码 不修改原函数的调用方式 2.装饰器的简单应用 # Author : xiajinqi impor ...
- vs code 写C#心得
!!!官方指南请访问: https://docs.microsoft.com/zh-cn/dotnet/core/index code runner 插件 ---------------------- ...