自测题:
1.    在图形应用程序中为用户提供选择的多种方式:P433
下拉菜单(pull-down menu)、弹出式菜单(pop-up menu)、对话框窗口(dialogue window)、单选按钮(radio button)、组合框(combo box)。

2.    使用JMenuBar类、JMenu类和JMenuItem类构建下拉菜单:
创建一个菜单需要有三方面内容:顶端的菜单栏(menu bar)、不同的菜单(menu)以及每个菜单都有各自的菜单项(menu item)列表。
将菜单项添加到菜单中,再将菜单添加到菜单栏中,最后将菜单栏添加到框架中。

3.    模式对话框与非模式对话框的区别:P445
模式对话框处于可见状态时,用户不可以与原框架进行交互,只有先关闭模式对话框后才能与原框架交互。
非模式对话框处于可见状态时,用户仍可以与原框架进行交互,甚至可以直接关闭原框架,非模式对话框也会与原框架一起关闭。

4.    下拉菜单与弹出式菜单的使用场景区别:
下拉菜单适用于全局环境;弹出式菜单适用于特定环境。

5.    弹出式菜单与对话框窗口的区别:P442
不希望原框架或窗体的一部分总是用于交互就可使用对话框窗口。

6.    多个单选按钮如何一起工作?P445
创建一个ButtonGroup对象,将单选按钮一个个加入到该组中,就可以一起工作了。

7.    File类的getName方法与getPath方法的区别:P453
getName只提供了文件的名称,getPath提供了文件的完整路径和名称。

8.    如何判断JComboBox对象中的选中条目:
getSelectedItem()函数就可返回被选中的条目内容。

9.    调用Notepad.exe的代码:

try {
Runtime.getRuntime().exec("C:\\Windows\\notepad.exe");
} catch (IOException ioe) {
System.out.println(ioe);
}

10.    JSlider的默认范围:默认的最小值和最大值分别是0和100 。

编程练习:代码附件
1.    都实现了,没啥想修改的。
2.    DiaglogModalDemo.java    RunDiaglogModalDemo.java
3.    图形界面的就先不做了。
4.    SliderRectangleDemo.java    RunSliderRectangleDemo.java
5.    DrawFigure.java RunDrawFigure.java
注:基本的几个交互组件都已经在DrawFigure中使用了,不再做6题了,图形界面太花时间。

《Java大学教程》—第18章 高级图形编程的更多相关文章

  1. 正在学习的Java大学教程

    推荐本书<Java大学教程> 看的人比较少,我也是多年不看书了,基于教程一般选国外的方法,从图书馆选了本书. 看了一半,感觉书的内容比较认真,对于基本的Java知识都算介绍全了,而且全书是 ...

  2. 疯狂JAVA讲义---第十二章:Swing编程(五)进度条和滑动条

    http://blog.csdn.net/terryzero/article/details/3797782 疯狂JAVA讲义---第十二章:Swing编程(五)进度条和滑动条 标签: swing编程 ...

  3. python 教程 第十七章、 网络编程

    第十七章. 网络编程 1)    FTP客户端 import ftplib import os import socket HOST = '127.0.0.1' DIRN = 'menus' FILE ...

  4. 《Java大学教程》—第10章 图形和事件驱动程序

    10.2 Swing程序包AWT(Abstract Window Toolkit): 抽象窗口工具集.依赖于本地操作系统的组件被称为重量级(Heavy Weight)组件,因为它们都会大量使用系统资源 ...

  5. 《Java大学教程》—第21章 高级案例研究

    21.3    需求:P510用例模型(use case model):用例图(use case diagram).用例(use case).行为说明(behaviour specification) ...

  6. 《Java大学教程》—第23章 Java网络编程

    本章主要关注的是Java的几个应用网络编程的场景,对于网络编程没有太多深入介绍,而Java本来也没有多少针对网络编程的特性.虽然Java有个Applet的概念,但是真用这个的开发的场景其实不多. 23 ...

  7. 《Java大学教程》—第24章 Java的背景

    本章主要介绍的是Java的背景知识,通过了解历史知道Java与其他语言的区别,以便更好选择在什么场景下使用Java. 24.2    语言的尺寸Java语言短小.紧凑,以C++为基础,放弃了一些特定的 ...

  8. 《Java大学教程》—第19章 改进用户界面

    用户与程序交互的媒介称为用户界面(user interface)或人机界面(human-computer interface). 19.2    Border接口8个实现Border接口的标准边框类: ...

  9. 《Java大学教程》—第14章 抽象、继承和接口

    自测题:1.    解释抽象和抽象数据类型的概念.P333抽象的概念是仅仅关注对象可以完成什么工作,而不必担心如何完成工作的细节.类模板通常被称为抽象数据类型.因为这类数据暴露给用户的所有信息仅仅是方 ...

随机推荐

  1. vue使用element-ui的el-input监听不了回车事件解决

    vue使用element-ui的el-input监听不了回车事件,原因应该是element-ui自身封装了一层input标签之后,把原来的事件隐藏了,所以如下代码运行是无响应的: <el-inp ...

  2. Java_Queue接口

    Queue接口 1.英文 a)         Queue 队列 b)         Deque ,Double ender queue缩写,双向队列 2.Queue接口 除了基本的 Collect ...

  3. Java中枚举的使用

    Java中枚举其实就是静态常量,今天发现枚举里面其实还能加方法,学习了下, 代码如下: package org.pine.test; import java.util.HashMap; import ...

  4. blfs(systemd版本)学习笔记-编译安装gnome桌面组件及应用

    我的邮箱地址:zytrenren@163.com欢迎大家交流学习纠错! blfs中的gnome项目地址:http://www.linuxfromscratch.org/blfs/view/stable ...

  5. Shell中判断语句if中-z至-d的意思

    [ -a FILE ] 如果 FILE 存在则为真. [ -b FILE ] 如果 FILE 存在且是一个块特殊文件则为真. [ -c FILE ] 如果 FILE 存在且是一个字特殊文件则为真. [ ...

  6. Netty实现一个简单聊天系统(点对点及服务端推送)

    Netty是一个基于NIO,异步的,事件驱动的网络通信框架.由于使用Java提供 的NIO包中的API开发网络服务器代码量大,复杂,难保证稳定性.netty这类的网络框架应运而生.通过使用netty框 ...

  7. Tars 服务调服务

    1,创建一个 tars 服务工程 2,把需要调用的服务的 客户端接口文件 拷贝到当前服务 3,构建通信器 CommunicatorConfig 调用,如果是 springboot 开发客户端可以使用注 ...

  8. 不能用notepad++编辑器编写python

    不能用notepad++编辑器编写python,因为notepad对空格支持不是很良好,会出现莫名其妙的错误!建议用vim或emacs. 有人这样解释:不要混合使用制表符和空格来缩进,因为这在跨越不同 ...

  9. c++趣味之返回void

    void a(){} void b(){return a();} int main() { b(); ; } 这个是能编译的(vs,gcc),void函数是能返回,一般不会这么写,但是这样确实可以.你 ...

  10. 编程经验点滴----巧妙解决 Oracle NClob 读写问题

    最近一个新项目中,尝试在 Oracle 数据库中使用 NCLOB 来保存大的 xml 字符串. 在代码自动生成工具(通过 JDBC 驱动程序,读数据库表结构,自动生成对应的 java 代码,包含增加. ...