网站大量收购独家精品文档,联系QQ:2885784924

Java程序设计案例教程 第2版 习题答案 习题10.doc

Java程序设计案例教程 第2版 习题答案 习题10.doc

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

PAGE1

【习题10】

一、选择题

CDACABCD

二、填空题

1、AWT

2、顶层容器中间容器

3、FlowLayoutBorderLayoutGridLayout

4、单行文本框口令框文本框

5、列表框JList

三、简答题

1、简述GUI界面设计的步骤。

答:1、创建顶层容器窗体,作为放置其他组件的容器;

创建要放置在窗体上的各个组件;

将各个组件添加到容器上(可使用布局管理器来管理位置);

处理事件响应,本例处理的是窗体关闭事件;

设置顶层容器组件大小;

使顶层容器组件可见。

2、什么是容器组件?Java中容器有哪些?

答:容器的主要作用是包容其他组件,并按一定的方式组织排列它们。Java中的容器主要分为顶层容器和中间容器。顶层容器是进行图形编程的基础,可以在其中放置若干中间容器或组件。在Swing中,有以下4中顶层容器:JWindow、JFrame、JDialog和JApplet。中间容器专门专门放置其他组件,介于顶层容器和普通Swing组件中间的容器。常用的中间容器有:JPanel、JOptionPane、JMenuBar、JToolBar、JTabbedPane等。

3、什么是布局管理?Java提供了哪几种布局?各有什么作用?

答:布局管理器负责控制组件在容器中的布局。Java语言提供了多种布局管理器,主要有:FlowLayout、BorderLayout、GridLayout等。

FlowLayout称为流式布局管理器。在这种布局管理器中,组件一个接一个从左往右、从上到下一排一排地依次放在容器中。FlowLayout默认为居中对齐。当容器尺寸发生变化时,组件大小不会变,但组件在容器中的位置会发生相应的变化。

BorderLayout称为边界布局管理器。这种布局管理器将容器版面分为5个区域:北区、南区、东区、西区和中区,遵循“上北下南、左西右东”的规律。5个区域可以用5个常量NORTH、SOUTH、EAST、WEST和CENTER来表示。当容器的尺寸变化时,组件的相对位置不会改变,NORTH和SOUTH组件高度不变,宽度改变,EAST和WEST组件宽度不变、高度改变,中间组件尺寸变化。

GridLayout称为网格布局管理器。这种布局管理器通过设置行列将容器划分成大小相同的规则网格。添加组件是按照“先行后列”的顺序依次添加。当容器尺寸发生变化时,组件的相对位置不变,大小变化。

4、简述Java的事件处理机制。

答:

图1事件处理模型

编写事件处理的过程是(见图1):

①创建一个组件,并设置其有关属性,如显示的大小和位置等。

②为该组件编写某种事件的监听器类(实现监听器接口或继承适配器),可以用外部类、内部类或匿名类的形式。

=3\*GB3③通过组件的addXXXListener()注册监听器类的实例。如果采用匿名类的形式,监听器的声明、创建和注册同时完成。

程序运行时,AWT处理事件的流程是(见图1):

⑴用户与界面交互,执行一个操作。

⑵组件响应操作,产生一个事件对象。

⑶组件将事件对象传递给监听器。

⑷监听器根据事件的具体内容执行相应的操作。

四、编程题

1、编写加法程序:在两个文本框中输入两个数,点击“计算”按钮,计算之和显示在第三个文本框中。

importjava.awt.FlowLayout;

importjava.awt.event.ActionEvent;

importjava.awt.event.ActionListener;

importjavax.swing.JButton;

importjavax.swing.JFrame;

importjavax.swing.JLabel;

importjavax.swing.JPanel;

importjavax.swing.JTextField;

publicclassAddDemo{

privateJFrameframe;

privateJLabellabel1;

privateJLabeladdsign;

privateJLabelequalsign;

privateJTextFieldnum1;

privateJTextFieldnum2;

privateJTextFieldresult;

privateJButtonbutton;

privateJPanelpanel1;

privateJPanelpanel2;

publicAddDemo(){

frame=newJFrame(求和);

label1=newJLabel(请输入两个数:);

adds

文档评论(0)

lai + 关注
实名认证
内容提供者

精品资料

版权声明书
用户编号:7040145050000060

1亿VIP精品文档

相关文档