自测题:
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. [转]js串口通信 调用MSCOMM32控件 链接电子秤

    本文转自:https://www.cnblogs.com/x-j-p/p/7819724.html 硬件环境:RS232转USB串口线*1 电子秤*1(本人采用G&G E600Y-C型号称重仪 ...

  2. 【转载】Centos系统采用NVM安装Node.js环境

    Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行环境,用来方便地搭建快速的易于扩展的网络应用.Node.js 使用了一个事件驱动.非阻塞式 I/O 的模型,使其轻量又 ...

  3. STM32-对芯片启动读保护,实现加密(详解)

    STM32可以对存储在flash上的程序进行读保护. 启动读保护后,用户就不能再读写程序了. 所以,在烧写程序之前,需要程序调用关闭读保护.关闭读保护后,会自动清空flash上的程序 头文件位于:#i ...

  4. linux防火墙相关 iptables

    1. root用户查看防火墙状态(非root用户无权限查看) 查看防火墙状态: service iptables status 2.开启和关闭防火墙 //开启防火墙: service iptables ...

  5. laravel接值 get post

    laravel使用一种简单的方式来访问用户提交的信息. 你可以用统一的方式来访问用户提交的信息,而不用为用户提交信息的方式操心. 引用类:use Illuminate\Support\Facades\ ...

  6. Thinkphp5多数据库切换

    在项目开发中需要Thinkphp5读取多个数据库的数据,本文详细介绍Thinkphp5多数据库切换 一.在database.php配置默认数据库连接 'type'           => 'm ...

  7. vue从入门到进阶:vue-router路由功能(九)

    基本使用 html: <script src="https://unpkg.com/vue/dist/vue.js"></script> <scrip ...

  8. 51NOD 1185 威佐夫游戏 V2(威佐夫博弈)

    1185 威佐夫游戏 V2  基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题  收藏  关注 有2堆石子.A B两个人轮流拿,A先拿.每次可以从一堆中取任意个或从2堆中取 ...

  9. POJ3683 Priest John's Busiest Day(2-SAT)

    Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 11049   Accepted: 3767   Special Judge ...

  10. Linux 新磁盘分区与挂载

      1.查看未分区的盘   2.新建分区   3.格式化分区(/dev/sdb1)   4.查看磁盘uuid [root@web-node1 ~]# blkid /dev/vdb1 /dev/vdb1 ...