Swing高级组件 主讲:赖国荣 QQ:31343080 www.sms98.cn.

Slides:



Advertisements
Similar presentations
營養午餐 嘉大附小四年二班. 形容詞豐富 鍋燒烏龍麵裡有很多料,有細細長長的麵、翠 綠的青菜、像雨傘的香菇、紅紅的蘿蔔和像圓 月的丸子。每次去盛鍋燒烏龍麵時,我都會聞 到香噴噴的味道,讓我好餓,似乎可以吃下一 頭牛。吃下第一口時,有彈牙的麵、鮮甜的青 菜、 QQ 的香菇、軟軟的丸子,還有脆脆的紅 蘿蔔。每當我吃完第一碗,就還想吃第二碗,
Advertisements

项目四 网店推广与营销 4.1 店内推广与营销. 教学目的: 通过本节内容的学习,帮助学生了解消费者保障服务分类,理解店内活动是运 营店铺时不可缺少的一些营销活动。 知识要求: 1. 了解申请加入消费者保障服务项目的条件 2. 了解店内活动如满就送、限时打折、搭配套餐、优惠券的设置 技能目标: 1.
广西 2014 年 “ 区培计划 ” 学前教育远程培 训 总结简报 南宁马山县幼教 1 班 莫毅.
index 目次 ( 請按一下滑鼠,解答就會出現喔 !) 接續下頁解答 3-1 極限的概念.
中职教师省级网络培训 使用说明 南京中华中等专业学校教研处 平台登陆 登录 (江苏教师教育) 在页面右侧找到登录框,填写用户名、密码进入系统.
面向对象与设计模式 RD 常见编程范式介绍  并行编程 - Process-orientedProcess-oriented  组件编程 - Component-basedComponent-based  事件驱动 - Service-oriented,Time-drivenService-orientedTime-driven.
学年 江西省教师全员远程培训指南. 培训学习及考核时间安排 学习时间: 2013 年 10 月 年 1 月 15 日 考核时间: 2014 年 3 月 1 日 年 3 月 30 日.
-- 八 (19) 班第二学期期中家长会 、关于期中考试 2 、关于班级常规活动 3 、关于会考、体育 4 、关于自主招生 5 、给家长的一些建议.
山东理工大学成人高等教育 新生入学指南. 如何获悉学院的通知公告等? 1. 网站。所有的通知公告等都通过远程与继 续教育学院网站 发布, 同学们应每周登录 “ 学生工作室 ” 或 “ 函授教育 ” 关注是否有新的通知公告。
财务处目前共有 50 人,其中事业编 32 人,非事业编 18 人。分为 6 个科室,分别是会计核算科、资金结算中心、综合管理科、预算管理科、 基建财务科和一卡通中心。 会计核算科主要业务为收入入账、费用报销审核等。 资金结算中心主要业务为资金收付、开具发票、学费管理。 综合管理科主要业务是工资及住房公积金管理、税务管理、收费项目.
房地产法 主讲教师:龙慧峰 QQ: 电话: 法律实质上既是物质的又是意识形态的这一 事实是与以下事实相联系的:法律既是从 整个社会的结构和习惯自上而下发展而来, 又是从社会中的统治阶级们的政策和价值 中自上而下移动。 —— 【美】伯尔曼《法律与革命》
某中学一青少年因迷上网络游戏,视力由1. 2下降到0
3.2 Java的类 Java 类库的概念 语言规则——程序的书写规范 Java语言 类库——已有的有特定功能的Java程序模块
JAVA 编 程 技 术 主编 贾振华 2010年1月.
加强工作室资源建设 提升网络辐射影响力 林月周工作室
发挥学科优势 打造“互联网+”党建工作模式
坚持群众路线 做到“三严三实” 内蒙古直属机关工委党校 裴聚斌 电话:
新所得税申报表如何填写 注册税务师 注册会计师 高级会计师 注册资产评估师 注册土地估价师 注册房地产估价师 主讲人:林溪发
我的未来,我做主之 坚持不懈,直到成功。 电话: QQ: 时间:2013年5月27日 肖亚平.
自读高晓声的小说 《陈奂生上城》 写一篇800以上的感悟文章.
2012江西(九江吉安)事业单位 公共基础知识 备考指导 主讲:罗红军 qq: 新浪微博:罗红军的微博
幼儿园环境创设 成智客服QQ:
工作中的九型人格 主讲嘉宾:梁旭 ---九型人格应用系列课程 介绍自己 有多少听过九型 课程纪律 课程时间 工作中的九型人格
客 家 仙 草 台北縣中和市秀山國民小學 五 年 十 班 王 靖 婷.
计算机基础知识 陈嘉明 玉溪农业职业技术学院.
凝心聚力 弘扬宣传思想工作正能量 ——2015年工委宣传部上半年工作总结.
教体系统“两学一做”辅导报告.
党员服务站宣传册 党站宗旨: 主导精神: 全心全意为同学服务 踏踏实实树党员形象 以人为本 服务为重
一切为了孩子 为了孩子的一切 港中数学网 收集整理 —八(1)班家长会.
网络研修天地 我与名师同行 ——襄阳高新区小学数学班简报 编辑:王继锋.
第一章 总论(承前) 主要内容: 1.简单介绍了会计的产生的和发展
港澳高校调研学习汇报 心理健康教育专题.
第14章 JDBC技术和数据库开发应用.
2010年个人岗位 精细化管理方案 鸡西大学继续教育部 刘欣悦.
大学生意外事故处理与应对.
第22章 Flex应用程序开发 在本章以前的章节中,花了很大的精力来讲解组件、数据等内容,毕竟大部分的开发者使用Flex都是受因为其强大的表示层功能吸引。本章在前面的基础上,进一步介绍Flex应用程序的开发。与前面的章节相比,本章将从整体上把握如何开发Flex应用,侧重于设计模式问题、安全、性能优化等。
资产评估实务 财经学院 童彦成 电话: QQ:
长沙神来福小吃培训 1.特色小吃培训 2.特色餐饮培训 3.家常菜培训 4.这种馅饼培训 5.特色面条培训 6.长沙臭豆腐培训 7.早餐培训
2011年梅州市高(完)中校长任职资格培训班 领导、校长莅临指导! 热烈欢迎.
我的母亲 老舍. 我的母亲 老舍 关于作者和写作背景 老舍是中国饮誉世界的小说家、戏剧家,是一位文化巨匠,一位语言艺术大师。  关于作者和写作背景   老舍(1899~1966)满族,原名舒庆春,字舍予,生于北京。 老舍是中国饮誉世界的小说家、戏剧家,是一位文化巨匠,一位语言艺术大师。
第十五章 中国特色社会主义事业的领导核心 王晓莹.
面向对象的程序设计(一).
MVC Servlet与MVC设计模式.
氣候變遷對南台灣降雨造成之影響 研究背景 結果與討論 研究方法 結論 朱振豪1 、彭康豪1 、莊煌甲1 、邱俊彥2,* 研究目的
第三部分 Java语言编程应用篇 第6章 Java语言的 图形用户界面开发技术 (之二).
第二章 JAVA语言基础.
Design Patterns Lecture 4.
視窗程式設計 9. 清單方塊 Chih Hung Wang Reference:
第六章 窗口系统和用户界面管理系统 山东大学计算机学院.
Ch13 集合與泛型 物件導向程式設計(2).
JAVA程序设计 第5章 深入理解JAVA语言----补充.
視窗程式設計 10. 組合方塊與對話盒 Chih Hung Wang Reference:
Java程序设计 第15章 创建用户界面.
2018/12/3 面向对象与多线程综合实验-网络编程 教师:段鹏飞.
辅导课程十三.
中国矿大计算机学院杨东平 第5章 接口和包 中国矿大计算机学院杨东平
集合框架和泛型(一).
C/C++/Java 哪些值不是头等程序对象
JAVA 编 程 技 术 主编 贾振华 2010年1月.
資料結構使用Java 第9章 樹(Tree).
第二章 Java语法基础.
Review 1~3.
辅导课程十一.
第二章 Java基本语法 讲师:复凡.
第二章 Java基本语法 讲师:复凡.
第6單元 6-1 類別的繼承 (Class Inheritance) 6-2 抽象類別 (Abstract Class)
第2章 Java语言基础.
----以《西北民族音乐学术资源数据库》为例 西安音乐学院 景 月 亲
PureMVC 孙晓申.
Presentation transcript:

Swing高级组件 主讲:赖国荣 QQ:31343080 www.sms98.cn

目 标 JList 实现 事件监听 JTree JTable

Swing MVC MVC(Model-View-Controller),既模型-视图-控制器 。 模型:维护数据并提供数据访问方法。 视图:绘制模型的部分数据或所有数据的可视。 控制器:处理事件。 使用MVC模式的优点: 1、数据内容本身和显示方式分离开,可以将多个视图和控制器插入到一个模型中。 2、当模型发生改变时,视图会自动得到通知;模型中的属性发生变化时视图也随之改变。 3、模型独立视图,不用改模型来适应新的视图或控制器。

JList JList控件用于显示对象列表,并允许用户选择列表中的一项或多项。 以数组对象创建的List组件其选项将无法改变 JList(ListModel dataModel):利用listModel建立一个下拉列表 JList(Object[ ] listData):利用数组对象建立一个下拉列表 JList(Vector listData):利用矢量集建立一个下拉列表 以数组对象创建的List组件其选项将无法改变 以矢量集创建的List组件其选项值可以随需要进行修改 int[] getSelectedIndices():得到选中项的索引值 Object[] getSelectedValues():得到选中项的内容 boolean isSelectedIndex(int index):判断给定索引项有没被选中 void setListData(Obejct[] data):设置创建的下拉列表的数组对象 void setListData(Vector data) :设置创建的下拉列表的矢量集对象 void setModel(ListModel model):设置创建列表框的列表框模板 void setSelectionModel(listSelectionModel model):设置选择方式

例 子

ListModel与DefaultListModel AbstractListModel是实现了ListModel接口的抽象类 通过继承该类实现必须的方法来创建一个ListModel对象来创建下拉列表 DefaultListModel是继承了AbstractListModel具体类 可以直接用new来创建一个ListModel对象来创建下拉列表,而不需要实现任何方法

AbstractListModel例子

DefaultListModel例子 使用带值的模型来创建给列表 创建形式上更简单

JList选项改变事件 在JList类中可以通过addListSelectionListener()方法来实现检测用户是否改变了JList选项。 实现步骤: 实现ListSelectionListener接口 给JList增加选项改变监听 jList1.addListSelectionListener(this); 实现valueChanged(e)方法,写上自己的业务逻辑

例 子

JTree JTree树是用来显示一组层次分明的数据,可展开也可合并 构造函数 JTree():创建一个默认的树 JTree(Hashtable value):根据Hashtable对象中值的关系来创建一个树 JTree(Object[] value):根据数组中值建立一个数,且该树有多个根节点 JTree(Vector value):根据矢量对象中值创建一个树 JTree(TreeModel model):根据指定的数据模型来创建树 JTree(TreeNode node):使用TreeNode对象来创建树 JTree(TreeNode node,boolean asksAllowsChildren):使用TreeNode对象来创建树,并指定该节点是否允许有子节点

例 子

例 子

JTree事件处理 JTree也偶一个非常重要的事件:选项改变监听事件; 实现步骤: 案例: 简单记事本 实现TreeSelectionListener接口 为JTree对象增加addTreeSelectionListener()方法 实现valueChanged(TreeSelectionEvent e)方法 案例: 简单记事本

例 子 实现分析: 左边一个JTree实现记事本的选择 右边一个编辑面板JEditorPane,编辑浏览内容 JTree与JEditorPane都要具有滚动条的功能,因此都必须放在一个滚动面板中JScrollPane 左右两边的滚动面板必须被一个分割面板JSplitPane分开

例 子

例 子

表格-JTable-1 1、表格由一个表格头部(列头部),表格列和单元值组成。 2、表格单元值由实现TableCellRender接口的对象绘制,并由实现了CellEditor接口的对象进行编辑。 3、表格支持很多选取模式,包括行、列和单元选取。 4、表格单独在swing.table包中有接口和类。 5、只有放在滚动窗格中的表格才会显示表格头部。

表格-JTable-2 单元 表格头 列 行

表格-JTable-3 构造函数 public JTable( ) public JTable( int numRow , int numColumns ) public JTable( Object[ ][ ] rowData , Object[ ] columnNames ) public JTable( Vector rowData , Vector columnNames ) public JTable( TableModel ) public JTable( TableModel , TableColumnModel ) public JTable( TableModel , TableColumnModel , ListSelectionModel )

表格-JTable-4 实现步骤: 继承AbstractTableModel类实现自己的表格模型 根据需要改写其中的方法,getColumnCount(),getRowCount(),getColumnName(),getValueAt()等 根据自己创建的表格模型来创建一个表格

例 子

例子

表格模型类图 JTable TableColumn ModelListener JComponent ListSelection CellEditor Listener TableModel Listener implements extends implements implements implements JTable TableModel Table ColumnModel implements implements Abstract TableModel DefaultTable ColumnModel ListSelection Model extends implements Default TableModel DefaultList Model

TableColumnModelEvent, 表格事件处理 表格模型 模型 功能 激发的事件 ListSelectionModel 维护选取模式、选取间隔和一个选取是否正在调整 ListSelectEvent TableColumnModel 存储表格列;添加、移动和删除列 TableColumnModelEvent, ChangeEvent TableModel 为单元数据、数据类型、行数、列数以及单元是否可编辑提供访问方法 TableModelEvent

事件例子 实现步骤: 居住地的值可以通过下拉框取值 当语文与数学中有一门考试成绩不到60分的,考试合格就为false

例 子

例 子

总结 JList 实现 事件监听 JTree JTable