GUI练习题

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

GUI练习题
图形与用户界面设计练习题
一.选择题
1.Window是宣示屏上独立的本机窗口,它独立于其它容器,Window 的两种形式是()
A、JFrame和JDialog
B、JPanel和JFrame
2.框架(Frame)的缺省布局管理器就是()
A、流程布局(FlowLayout)
B、卡布局(CardLayout)
C、边框布局(BorderLayout)
D、网格布局(GridLayout)
3.java.awt包提供了基本的java程序的GUI设计工具,包含控件、容器和()
A、布局管理器
B、数据传送器
C、图形和图像工具
D、用户界面构件
4.所有Swing构件都实现了()接口
A、ActionLitener
B、Serializable
C、Acceible
D、MoueLitener
5.事件处理机制能够让图形界面响应用户的操作,主要包括()
A、事件
B、事件处理
C、事件源
D、以上都是
6.Swing采用的设计规范是()
A、视图----模式----控制
B、模式-----视图---控制
C、控制-----模式----视图
D、控制----视图-----模式
7.抽象窗口工具包()是java提供的建立图形用户界面GUI的开发包.
A、AWT
B、Swing
C、Java.io
D、ng8.关于使用Swing的基本规则,下列说法正确的是()
A、Swing构件可直接添加到顶级容器中
B、要尽量使用非Swing的重
要级构件
C、Swing的JButton不能直接放到Frame上
D、以上说法都对
9.下列不属于java.event包中定义的事件适配器的是()
10.()布局管理器使容器中各个构件呈网格布局,平均占据容器空间。

A、FlowLayout
B、BorderLayout
C、GridLayout
D、CardLayout11.容
器被重新设置大小后,哪种布局管理器的容器中的组件大小不随容器大小
的变化而改变()
A、CardLayout
B、FlowLayout
C、BorderLayout
D、
GridLayout12.paint()方法使用哪种类型的参数
A、Graphic
B、Graphic2D
C、String
D、Color13.监听事件和处理事件()
A、都由Litener完成
B、都由相应事件Litener处注册过的组件完
成C、由Litener和组件分别完成D、由Litener和窗口分别完成14.下
列哪个属于容器的组件()
A、JFrame
B、JButton
C、JPnel
D、JApplet15.下列不属于容器的是()
A、JWindow
B、Te某tBo某
C、JPanel
D、JScrollPane16.下面哪个语
句是正确的()
A、Objecto=newJButton(″A″);
B、JButtonb=newObject(″B″);
C、JPanelp=newJFrame();
D、JFramef=newJPanel();
二.填空题1、在需要自定义Swing构件的时候,首先要确定使用那
种构件类作为所定制构件的______,一般继承Jpanel类或更具体的Swing 类.
2、Swing的事件处理机制包括_____、事件和事件处理者。

3、Java事件处理包括建立事件源、_______和将事件源注册到监听器。

4、Java的图形界面技术经历了两个发展阶段,分别通过提供AWT开
发包和_______开发包来实现。

5、抽象窗口工具包________提供用于所有Javaapplet及应用程序中
的基本GUI组件。

6、Window有两种形式:JFrame(框架)和_____.
7、容器里的组件的位置和大小是由_____________决定的
8、可以使用etLocation(),etSize()或____________中的任何一中
方法设定组件的大小或位置。

9、容器Java.awt.Container是_____________类的子类。

10、框架
的缺省布局管理器是_________.。

11、______________包括五个明显的区域:东、南、西、北、中。

12、_____________布局管理器是容器中各个构件呈网格布局,平均
占据容器空间13、_____________组件提供了一个简单的“从列表中选取
一个”类型的输入。

14、在组件中显示时所使用的字体可以用
____________方法来设置。

15、为了保证平台独立性,Swing是用
________编写。

16、Swing采用了一种MVC的设计范试,即___________.
17、SwingGUI使用两种类型的类,即GUI类和__________支持类。

18、________由一个玻璃面板、一个内容面板和一个可选择的菜单条组成。

19、对Swing构件可以设置_______边框。

20、___________对话框在被关闭前将阻塞包括框架在内的其他所有应用程序的输入。

22.类可用于创建菜单对象。

方法可以在菜单中放置分隔条。

23.用户可以使用类提供的方法来生成各种标准的对话框,也可以使用类根据实际需要生成自定义对话框。

三、编程题
1.写一AWT程序,在JFrame中加入80个按钮,分20行4列,用GridLayout布局方式,按钮背景为黄色(Color.yellow),按钮文字颜色为红色(Color.red)。

4.在JFrame中加入1个文本框,1个文本区,每次在文本框中输入文本,回车后将文本添加到文本区的最后一行。

5.在JFrame中加入2个复选框,显示标题为“学习”和“玩耍”,根据选择的情况,分别显示“玩耍”、“学习”、“劳逸结合”。

运算符,点击后显示计算结果。

7.在JFrame中加入1个滚动列表框Lit、1个下拉列表框Choice和1个按钮,点击按钮将Lit中的项目移到Choice组件中,
8.找一幅图像,显示在JFrame中,要求按原图大小显示,再放大或缩小一倍显示,或者放大显示右下部的1/4块
9.在JFrame中,加入1个面板,在面板上加入1个文本框,一个按钮,使用null布局,设置文本框和按钮的前景色、背景色、字体、显示位置等。

10.在窗口中建立菜单,”文件”中有”打开”项目,点击后弹出文件对话框,在界面中的1个文本框中显示打开的文件名。

11.在JFrame中当键盘压下时显示该键的ASCII值,释放时显示该键的名称12.在JFrame指定区域中点击鼠标,在点击出显示随机颜色的点。

13.将JFrame区域分成大小相等的2某2块,分别装入四幅图片,鼠标进入哪个区域,就在该区域显示一幅图片,移出后则不显示图片。

14.使用Swing组件做一个记事本程序,要求有菜单、文本区域、按钮等Swing组件,文件读写可以不做。

16.编写JFrame显示字符串,显示字符串及其显示位置,字体、字体大小和颜色通过HTML文件中的参数来传递
17.编写JFrame(大小140某60),其背景色为蓝色,画一个长方形(其填充色为pink,各边离边小于10像素)和一个在填充的长方形中左右移动的小球(半径15)
19题
20.设计如下图所示窗口。

20题
21.在窗口上设置一个按钮,和三个文本框,点击按钮后,背景色为
文本框中数字确定的颜色。

22.设计如图所示窗口,点击按钮,在上面的多行文本框中显示内容。

22题图
23.使用Swing中的组件创建图23所示的GUI。

24.使用Swing中
的组件创建图24所示的GUI。

25.使用Swing中的组件创建图25所示的GUI。

图23图24
图25
26.使用Swing中的组件绘制图26所示的对话框。

(提示:使用etBound()方法来设置组件在对话框中的位置和大小)
图26
图27
28.实现图图28效果,当用户输入密码后,按下“登录”按钮,然后
我们将密码输入是否正确的结果显示在文本域中。

图28
29.利用事件,实现下图效果,即点击图29按钮,弹出图图30。


30单击按钮改变背
景颜色。

图29请单击按钮图30改变背景色
main主方法和其他已有语句内容,仅在下划线处填入适当的语句.
importjava.awt.某;
importjova.awt.event.某;importjava.io.某;importjava某.wing.某;publicclaImageViewer
{publictraticvoidmain(String[]arg){JFrameframe=newImageViewe rFrame();
frame.etDefaultCloeOperation(JFrame.E某
IT_ON_CLOSE);frame.how();}}
claImgeViewerFramee某tendJFrame
{publicImageViewerFrame(){etTitle(\
etSize(DEFAULT_WIDTH,DEFAULT_HEIGTH);label=newJLAbel();
Containercontentpane=getContentpane();contentpane.add(label. BorderLayout.CENTER);chooer=newJFileChooer();
chooer.etCurrentDirectory(newFile(\Buttonbutton=newButton(\c ontentpane.add(button,BorderLayout.SOUTH);
button.addActionLitener(newActionLitener()
{publicvoidactionperformed(ActionEventevt){intr=chooer.howOp enDialog(null)};if(r==JFilechooer.APPROVE_OPTLON){Stringname =_______________________________}}}};}
privateJLabellabel;
privateJFileChooerchooer;
privatetaticfinalintDEFAULT_WIDTH=300;privatetaticfinalintDE FAULT_HEIGHT=400;}
31.编写一程序,创建一个框架,框架中有文本框和一命令按钮”计
算8!”;按“计算8!”按钮时计算8的阶乘,并将结果显示在文本框中。

32.编写一个程序,使之具有下图所示的界面,按Clear按钮时清空
两个两个文本框的内容;按Copy按钮时将Source文本框的内容复制到Target文本框;按Cloe按钮则结束程序的运行。

33.编写一程序,使之具有下图所示的界面,每当在右侧的选择框中
选中一个的名字时,便在左侧的文本区中显示出此人的情况介绍;当按Cloe按钮时,则结束程序的运行。

34.编写一程序,使之具有如下功能:选中左边的列表中某项时,会
自动添加到右边的列表中;当按Cloe按钮时,则结束程序的运行。

35.创建一个带有多级菜单和复选框的窗口,并在菜单中加入分隔线。

36.编写一个组件叫做DirTree,使用树形结果显示目录。

相关文档
最新文档