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的更多相关文章

  1. Java基础知识:Java实现Map集合二级联动1

    Java实现Map集合二级联动 Map集合可以保存键值映射关系,这非常适合本实例所需要的数据结构,所有省份信息可以保存为Map集合的键,而每个键可以保存对应的城市信息,本实例就是利用Map集合实现了省 ...

  2. JAVA基础知识|java虚拟机(JVM)

    一.JVM简介 java语言是跨平台的,兼容各种操作系统.实现跨平台的基石就是虚拟机(JVM),虚拟机不是跨平台的,所以不同的操作系统需要安装不同的jdk版本(jre=jvm+类库:jdk=jre+开 ...

  3. Java基础知识:Java实现Map集合二级联动2

    2. 定义获取省份的方法,创建一个Map集合,将上一步得到的映射集合赋值给它,使用Map集合的keySet()方法获取该集合中的所有键对象组成的Set 集合,即为省分集合,创建一个Object型一维数 ...

  4. Java实现Map集合二级联动

    Map集合可以保存键值映射关系,这非常适合本实例所需要的数据结构,所有省份信息可以保存为Map集合的键,而每个键可以保存对应的城市信息,本实例就是利用Map集合实现了省市级联选择框,当选择省份信息时, ...

  5. Java基础知识总结之类的集合

    Java集合概述 1.集合类也叫作容器类.它的功能相当于一个容器.可以存储数量不确定的数据,以及保存具有映射关系的数据(也被称为关联数组). 2.Java的集合(容器),它是用来”装对象的“(实际上是 ...

  6. JAVA基础知识总结15(集合容器)

    集合框架:用于存储数据的容器. 1:对象封装数据,对象多了也需要存储.集合用于存储对象. 2:对象的个数确定可以使用数组,但是不确定怎么办?可以用集合.因为集合是可变长度的. 集合和数组的区别: 1: ...

  7. java基础知识——Java的定义,特点和技术平台

    (作者声明:对于Java编程语言,很多人只知道怎么用,却对其了解甚少.我也是其中一员.所以菜鸟的我,去查询了教科书以及大神的总结,主要参考了<Java核心技术>这本神作.现在分享给大家!) ...

  8. [java基础知识]java安装步骤

    jre:  java运行环境.  jre =  java虚拟机 + 核心类库(辅助java虚拟机运行的文件).如果只是运行java程序,只需要安装jre.    jdk: java开发工具集   jd ...

  9. Java基础知识:Java实现Map集合二级联动3

    * Returns an image stored in the file at the specified path * @param path String The path to the ima ...

随机推荐

  1. jQuery 表单元素取值与赋值方法总结

    一.普通文本框的赋值与取值 1.1.1赋值 <h2>jQuery 表单元素取值与赋值方法总结</h2> <input type="text" clas ...

  2. SpringBoot读取自定义配置文件

    自定义配置文件 my-config.properties bfxy.title=bfxy bfxy.name=hello spring boot! bfxy.attr=12345 配置文件类 appc ...

  3. JS知识点整理(二)

    前言 这是对平时的一些读书笔记和理解进行整理的第二部分,第一部分请前往:JS知识点整理(一).本文包含一些易混淆.遗漏的知识点,也会配上一些例子,也许不是很完整,也许还会有点杂,但也许会有你需要的,后 ...

  4. .net core 实践笔记(二)--EF连接Azure Sql

    ** 温馨提示:如需转载本文,请注明内容出处.** 本文链接:https://www.cnblogs.com/grom/p/9902098.html 笔者使用了常见的三层架构,Api展示层注入了Swa ...

  5. 进程通信-Queue

    进程通信-Queue Queue消息队列是python进程通信的其中一种方式.需要引入multiprocessing包中的Queue函数(这是函数,不是类). 有一个queue包,里面也有Queue, ...

  6. flashback query闪回数据

    误删除了部分重要数据,已提交,需要恢复.首先尝试flashback query闪回数据. 数据库运行在归档模式,首先确认数据库的SCN的变化: SQL> col fscn for 9999999 ...

  7. C语言入门学习和整理 1-3

    1. int main() { char c = 'A'; printf("c=%c", c); } int main() { ; printf("c=%c", ...

  8. 前端基础-jQuery的动画效果

    阅读目录 隐藏 显示 切换 下拉 上卷 显示 一.jQuery中隐藏元素的hide方法 让页面上的元素不可见,一般可以通过设置css的display为none属性.但是通过css直接修改是静态的布局, ...

  9. Angularjs中的超时处理

    关键代码: // 定义一个定时器, 设置5s为请求超时时间 var timer = $timeout(function () { console.log('登录超时!'); // 模拟提示信息 },5 ...

  10. PHP结合zyupload多功能图片上传实例

    PHP结合zyupload多功能图片上传实例,支持拖拽和裁剪.可以自定义高度和宽度,类型,远程上传地址等. zyupload上传基本配置 $("#zyupload").zyUplo ...