南京大学:《Java语言程序设计 Programming in Java》课程教学资源(教案讲义)Lecture 09 图形用户界面的设计与实现

航R Lecture9 9-1 图形用户界面 的设计与现 Programming in Java JAVA
9-1 Programming in Java 图形用户界面 的设计与实现 Lecture9

a2水 提纲 9-2 用户自定义成分 GUI标准组件 Java事件处理 布局设计 容器 Programming in Java JAVA
9-2 Programming in Java • 用户自定义成分 • GUI标准组件 • Java事件处理 • 布局设计 • 容器 提纲

航2制 AWT APIs 9-3 java.awt java.awt.accessibility java.awt.color java.awt.datatransfer java.awt.dnd java.awt.event java.awt.font java.awt.geom 。java.awt.image ·java.awt.peer 。java.awt.print javax.swing Programming in Java JAVA
9-3 Programming in Java AWT APIs • java.awt • java.awt.accessibility • java.awt.color • java.awt.datatransfer • java.awt.dnd • java.awt.event • java.awt.font • java.awt.geom • java.awt.image • java.awt.peer • java.awt.print • javax.swing

用户自定义成 9-4 ·AWT(Abstract Windowing Toolkit))包 - Color,Font,FontMetrics Component, Graphics,Polygon,Toolkit ·坐标(0,0) (width-1,height-1) ·绘制图形P185例7-1 ·显示文字P187例7-2 ·控制颜色P189例7-3 ·显示图像P190例7-4 Programming in Java JAVA
9-4 Programming in Java 用户自定义成分 • AWT(Abstract Windowing Toolkit) 包 – Color, Font, FontMetrics , Component, Graphics , Polygon, Toolkit • 坐标(0, 0) (width-1, height-1) • 绘制图形 P185 例7-1 • 显示文字 P187 例7-2 • 控制颜色 P189 例7-3 • 显示图像 P190 例7-4

AWT标准组件(1) 9-5 Event Obiect CheckboxGroup FlowLayout Color Graphics Font Component Button Lable Choice Scrollbar Container List Canvas Checkbox TextComponent Window panel TextField Dialog Frame TextArea Applet FileDialog Programming in Java JAVA
9-5 Programming in Java AWT 标准组件(1) Event Obiect Graphics Component CheckboxGroup TextComponent Container Button TextField Checkbox Window panel Applet Lable List Choice TextArea Dialog Frame FileDialog Scrollbar Canvas Color Font FlowLayout

AWT标准组件(2) 9-6 组件 Button,Checkbox,Choice,List,Menu, TextField 这些控件产生ACTION EVENT.,程序会响应该事件 -其它控件:Scrollbar and TextArea Canvas Lable 容器 -类型:Panel,,ScrollPane,.window -常见的容器:Dialog,FileDialog,Applet,.Frame Programming in Java JAVA
9-6 Programming in Java • 组件 – Button, Checkbox, Choice, List, Menu, TextField 这些控件产生ACTION_EVENT, 程序会响应该事件 – 其它控件: Scrollbar and TextArea – Canvas – Lable • 容器 – 类型:Panel,ScrollPane,window – 常见的容器:Dialog, FileDialog ,Applet, Frame AWT 标准组件(2)

AWT标准组件(3) 9-7 布局类 一选择预先定义好的组件排放格式 。事件处理类 一封装用户与应用程序交互的信息 其它组件类 Size and Shape Class -Color Class -Image Class -Font and FontMetrics Class -Graphics Programming in Java JAVA
9-7 Programming in Java • 布局类 – 选择预先定义好的组件排放格式 • 事件处理类 – 封装用户与应用程序交互的信息 • 其它组件类 – Size and Shape Class – Color Class – Image Class – Font and FontMetrics Class – Graphics AWT 标准组件(3)

a2水 AWT标准组件(4) 9-8 The AWT Components Menu Label Canvas List Iteml TextArea List Item2 List Item3 TextField Button CheckBox1 Choice Item 1 Programming in Java JAVA
9-8 Programming in Java The AWT Components MenuCanvas Label TextArea Button TextField CheckBox1 Choice Item 1 List Item1 List Item2 List Item3 AWT 标准组件(4)

AWT事件模型 9-9 ·用户发出命令,会引发一个系统预先定义好的事件 ·用户程序需要编制代码定义每个特定事件发生时程序应 做出如何响应 ·图形用户界面的每个可能产生事件的组件被称为事件源, 不同事件源上发生的事件的种类不同 ·事件源必须注册给能够处理该事件源上那种类型事件的 监听者 ·监听者可以是包容事件源的容器,也可以是另外的对象 ·监听者具有监听和处理某类事件的功能,是因为它实现 了相关的接口。这些接口内部包含了若干处理相关事件的 抽象方法,监听者需要写出具体的方法体 Programming in Java JA
9-9 Programming in Java AWT事件模型 • 用户发出命令,会引发一个系统预先定义好的事件 • 用户程序需要编制代码定义每个特定事件发生时程序应 做出如何响应 • 图形用户界面的每个可能产生事件的组件被称为事件源, 不同事件源上发生的事件的种类不同 • 事件源必须注册给能够处理该事件源上那种类型事件的 监听者 • 监听者可以是包容事件源的容器,也可以是另外的对象 • 监听者具有监听和处理某类事件的功能,是因为它实现 了相关的接口。这些接口内部包含了若干处理相关事件的 抽象方法,监听者需要写出具体的方法体

成2 委托事件模型(1) 9-10 登记.a.addMouseActionListener (e b.mouse -click (e) 事件 事件源 Mouse 激发 事件监听器 -Action 油住渔 响应 a -Event b e 查找监听器 class A class B complements MouseActionListener public void addMouseActionListener publ ic void (MouseActionListener I) mouseCl ick (MouseActionEvent e) Programming in Java JAVA
9-10 Programming in Java 委托事件模型(1) 事件源 a class A { ....... public void addMouseActionListener (MouseActionListener l) { ....... } ....... } class B complements MouseActionListener { ....... public void mouseClick(MouseActionEvent e ) { ....... } ........ } 事 件 Mouse -Action -Event e 激发 被传递 响应 b.mouse -Click(e) 查找监听器 登记:a.addMouseActionListener(e) 事件监听器 b
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 南京大学:《Java语言程序设计 Programming in Java》课程教学资源(教案讲义)Lecture 08 数据结构与算法.ppt
- 南京大学:《Java语言程序设计 Programming in Java》课程教学资源(教案讲义)Lecture 07 Java 工具类.pdf
- 南京大学:《Java语言程序设计 Programming in Java》课程教学资源(教案讲义)Lecture 06 继承与多态.pdf
- 南京大学:《Java语言程序设计 Programming in Java》课程教学资源(教案讲义)Lecture 05 Java 类.ppt
- 南京大学:《Java语言程序设计 Programming in Java》课程教学资源(教案讲义)Lecture 05 Java 类.pdf
- 南京大学:《Java语言程序设计 Programming in Java》课程教学资源(教案讲义)Lecture 04 Java 语言基础.ppt
- 南京大学:《Java语言程序设计 Programming in Java》课程教学资源(教案讲义)Lecture 03 Java 编程入门.ppt
- 南京大学:《Java语言程序设计 Programming in Java》课程教学资源(教案讲义)Lecture 03 Java 编程入门.pdf
- 南京大学:《Java语言程序设计 Programming in Java》课程教学资源(教案讲义)Lecture 02 Java 概述.ppt
- 南京大学:《Java语言程序设计 Programming in Java》课程教学资源(教案讲义)Lecture 10 Java 高级编程.pdf
- 南京大学:《Java语言程序设计 Programming in Java》课程教学资源(教案讲义)Lecture 01 面向对象软件开发概述.pdf
- 电子科技大学:《Linux操作系统内核技术 The Linux Kernel Technology》课程教学资源(课件讲稿)第四讲 内核模块不可调试之谜.pdf
- 电子科技大学:《Linux操作系统内核技术 The Linux Kernel Technology》课程教学资源(课件讲稿)第三讲 指针存储之谜.pdf
- 电子科技大学:《Linux操作系统内核技术 The Linux Kernel Technology》课程教学资源(课件讲稿)第二讲 程序员技术手段.pdf
- 电子科技大学:《Linux操作系统内核技术 The Linux Kernel Technology》课程教学资源(课件讲稿)第一讲 课程概述(李林).pdf
- 电子科技大学:《机器学习 Machine Learning》课程教学资源(课件讲稿)第9章 Markov马尔科夫分类.pdf
- 电子科技大学:《机器学习 Machine Learning》课程教学资源(课件讲稿)第8章 特征提取与降维.pdf
- 电子科技大学:《机器学习 Machine Learning》课程教学资源(课件讲稿)第7章 非监督分类.pdf
- 电子科技大学:《机器学习 Machine Learning》课程教学资源(课件讲稿)第6章 深度神经网络.pdf
- 电子科技大学:《机器学习 Machine Learning》课程教学资源(课件讲稿)第5章 支持向量机.pdf
- 南京大学:《网络安全与入侵检测 Network Security and Intrusion Detection》课程教学资源(课件讲稿)01 Introduction(戴海鹏).pdf
- 南京大学:《网络安全与入侵检测 Network Security and Intrusion Detection》课程教学资源(课件讲稿)02 Security Principles.pdf
- 南京大学:《网络安全与入侵检测 Network Security and Intrusion Detection》课程教学资源(课件讲稿)03 Symmetric Key Cryptography.pdf
- 南京大学:《网络安全与入侵检测 Network Security and Intrusion Detection》课程教学资源(课件讲稿)04 Advanced Encryption Standard(AES).pdf
- 南京大学:《网络安全与入侵检测 Network Security and Intrusion Detection》课程教学资源(课件讲稿)05 Asymmetric Key Cryptography.pdf
- 南京大学:《网络安全与入侵检测 Network Security and Intrusion Detection》课程教学资源(课件讲稿)06 Number Theory.pdf
- 南京大学:《网络安全与入侵检测 Network Security and Intrusion Detection》课程教学资源(课件讲稿)07 Hashes and Message Digests.pdf
- 南京大学:《网络安全与入侵检测 Network Security and Intrusion Detection》课程教学资源(课件讲稿)08 Authentication Using Asymmetric Keys.pdf
- 南京大学:《网络安全与入侵检测 Network Security and Intrusion Detection》课程教学资源(课件讲稿)09 Authentication Using Symmetric Keys.pdf
- 南京大学:《网络安全与入侵检测 Network Security and Intrusion Detection》课程教学资源(课件讲稿)10 Kerberos.pdf
- 南京大学:《网络安全与入侵检测 Network Security and Intrusion Detection》课程教学资源(课件讲稿)11 Public-Key Infrastructure.pdf
- 南京大学:《网络安全与入侵检测 Network Security and Intrusion Detection》课程教学资源(课件讲稿)12 Secure Socket Layer(SSL)、TLS(Transport Layer Security).pdf
- 南京大学:《网络安全与入侵检测 Network Security and Intrusion Detection》课程教学资源(课件讲稿)13 Human Authentication.pdf
- 南京大学:《网络安全与入侵检测 Network Security and Intrusion Detection》课程教学资源(课件讲稿)14 Buffer Overflow Attacks.pdf
- 南京大学:《网络安全与入侵检测 Network Security and Intrusion Detection》课程教学资源(课件讲稿)15 Bloom Filters and its Variants.pdf
- 南京大学:《网络安全与入侵检测 Network Security and Intrusion Detection》课程教学资源(课件讲稿)16 Bloom Filter for Network Security.pdf
- 南京大学:《网络安全与入侵检测 Network Security and Intrusion Detection》课程教学资源(课件讲稿)17 Web Security(Cookies and Cross Site Scripting,XSS).pdf
- 南京大学:《网络安全与入侵检测 Network Security and Intrusion Detection》课程教学资源(课件讲稿)18 Web Security(SQL Injection and Cross-Site Request Forgery).pdf
- 南京大学:《网络安全与入侵检测 Network Security and Intrusion Detection》课程教学资源(课件讲稿)19 Firewall Design Methods.pdf
- 《GPU并行编程 GPU Parallel Programming》课程教学资源(参考文献)MPI A Message-Passing Interface Standard(Version 2.2).pdf