Java图形用户界面编程练习

合集下载

java实验5图形用户界面设计试验

java实验5图形用户界面设计试验

java实验5图形⽤户界⾯设计试验常⽤布局1)、流布局: FlowLayout 从左到右,⾃上⽽下⽅式在容器中排列,控件的⼤⼩不会随容器⼤⼩变化.容器.setLayout(new FlowLayout(FlowLayout.LEFT));2)、⽹格布局: GridLayout 按照指定⾏数与列数,将容器分成⼤⼩相等的单元格每个单元格放置⼀个控件. 不能将控件放在指定单元格 容器.setLayout(new GridLayout(3,4,10,15));3)、边界布局: BorderLayout 将容器分成东、西、南、北、中五个部分 容器.setLayout(new BorderLayout()); 窗⼝的内容⾯板默认布局就是边界布局。

容器.add(控件,BorderLayout.NORTH);4)、混合布局: 使⽤JPanel,将多个布局组合在⼀起使⽤5)、绝对布局 null: 以坐标定位 容器.setLayout(null); 每个控件在放置在容器之前,必须设置其边界 setBounds(x,y,width,height); btn.setBounds(10,100,30,60);常⽤事件1)、事件源 EventSource:能够触发事件控件如:JButton,JTextField,JFrame,JComboBox,....2)、事件 Event:ActionEvent,KeyEvent,WindowEvent,TextEvent,...3)、事件侦听者Listener(接⼝) ActionListener,WindowListener,...class A implements ActionListener{public void actionPerformed(ActionEvent e){....}}A lis=new A();4)、事件处理函数public void actionPerformed(ActionEvent e){....}事件流程:事件源触发事件-->事件源侦听者接收事件-->⾃动调⽤相应事件处理函数.实践编程1.在应⽤程序窗体中安排1个⽂本框,⼀个标签。

JAVA第四章课后习题解答

JAVA第四章课后习题解答
public Test4_8(){ super("简单的四则运算器"); setSize(300,400); setVisible(true); setLayout(new GridLayout(3,1));
txtFl1=new TextField(5); txtFl2=new TextField(5); txtFl3=new TextField(5); btn1=new Button("+"); btn2=new Button("-"); btn3=new Button("*"); btn4=new Button("÷");
public class Test4_9 extends Frame implements ActionListener{ Button btn; public Test4_9(){ super("弹出窗口练习"); setSize(300,200);
5
setVisible(true); setLayout(new BorderLayout());
TextField txtFl1,txtFl2,txtFl3;
2
Button btn; public Test4_6(){
super("简单加法运算器"); setSize(300,200); setVisible(true); setLayout(new FlowLayout());
txtFl1=new TextField(5); txtFl2=new TextField(5); txtFl3=new TextField(10); btn=new Button("=");

JavaGUI编程创建漂亮的用户界面

JavaGUI编程创建漂亮的用户界面

JavaGUI编程创建漂亮的用户界面JavaGUI编程是一种强大的工具,它可以帮助开发者创建漂亮、直观的用户界面。

在本文中,我将为您介绍如何使用JavaGUI编程来设计和实现一个令人印象深刻的用户界面。

一、选择合适的图形库在开始编写JavaGUI程序之前,我们需要选择一个合适的图形库。

Java提供了多种图形库选项,包括Swing、JavaFX等。

在这里,我将以Swing为例进行演示。

二、设计用户界面设计用户界面是实现漂亮用户界面的第一步。

在设计过程中,我们应该考虑到用户的需求和使用习惯,使界面具有良好的可用性和可访问性。

以下是一些设计原则可以帮助您创建漂亮的用户界面:1. 简洁明了:界面应该简洁明了,避免过多的干扰元素和复杂的图形。

2. 色彩搭配:选择适合的颜色搭配,使界面看起来舒适和谐。

同时要注意颜色的对比度,以确保文字和界面元素的可读性。

3. 布局:合理的布局可以使界面更加整洁美观。

可以使用不同的布局管理器(如FlowLayout、GridBagLayout等)来帮助您实现布局。

4. 图标和图片:适当使用图标和图片可以增加界面的吸引力。

选择高质量的图标和图片,确保其分辨率和大小适合当前界面的需求。

5. 文字字体:选择易读的字体和合适的字号。

正文通常使用宋体、微软雅黑等,标题可以选择一些特殊的字体以增加视觉效果。

三、编写代码一旦您完成了用户界面的设计,接下来就是编写代码来实现这个界面。

下面是一个简单的示例,展示如何使用Swing来创建一个基本的用户界面。

```javaimport javax.swing.*;import java.awt.*;public class GUIExample {public static void main(String[] args) {JFrame frame = new JFrame("漂亮的用户界面");frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);frame.setSize(400, 300);JPanel panel = new JPanel();panel.setLayout(new FlowLayout());JLabel label = new JLabel("欢迎使用漂亮的用户界面!");label.setFont(new Font("宋体", Font.BOLD, 18));JButton button = new JButton("点击我");button.setPreferredSize(new Dimension(100, 50));panel.add(label);panel.add(button);frame.getContentPane().add(panel);frame.setVisible(true);}}```上述代码演示了如何创建一个简单的用户界面,其中包括一个标签和一个按钮。

实验五 Java的图形用户界面

实验五 Java的图形用户界面

实验五Java的图形用户界面
一、实验目的与要求
1.掌握AWT包中常用组件的使用方法。

2.熟悉布局管理器的适用场合,采用布局管理器进行界面的布局。

二、实验内容
1.程序改错
下列程序都有三个错误,按题中的要求,纠正错误并调试程序。

(1)问题描述:下面程序执行时会发生错误,请修改并调试程序。

程序的功能是在屏幕上输出如图5-9所示的图案,图案中每个方格大小是20*20像素。

2、P258实验五程序改错第一题。

3、编程题:设计一个Applet程序sy5_2.java,界面如图5-13所示,其中有两个按钮,当输入完姓名和密码内容后,按“确认”按钮出现图5-14所示界面,当按下“重新输入”按钮,又回到图5-13所示界面。

提示:用两个面板组件,第一个面板放3个标签和两个文本域,第二个面板放两个按钮。

图5-13
图5-14。

GUI练习题

GUI练习题

图形与用户界面设计一.选择题1.Window是宣示屏上独立的本机窗口,它独立于其它容器,Window 的两种形式是()A、Frame和Dialog??????B、Panel和FrameC、Container和ComponentD、LayoutManager和Container2.框架(Frame)的缺省布局管理器就是()A、流程布局(Flow Layout)B、卡布局(Card Layout)C、边框布局(Border Layout)D、网格布局(Grid Layout)3.java.awt包提供了基本的java程序的GUI设计工具,包含控件、容器和()A、布局管理器B、数据传送器C、图形和图像工具D、用户界面构件4.所有Swing构件都实现了()接口A、ActionListener ???B、SerializableC、AccessibleD、MouseListener5.事件处理机制能够让图形界面响应用户的操作,主要包括()A、事件B、事件处理C、事件源D、以上都是6.Swing采用的设计规范是????()A、视图----模式----控制B、模式-----视图---控制C、控制-----模式----视图D、控制----视图-----模式7.抽象窗口工具包( )是java提供的建立图形用户界面GUI的开发包.A、AWTB、SwingC、Java.ioD、ng8.关于使用Swing的基本规则,下列说法正确的是( )A、Swing构件可直接添加到顶级容器中B、要尽量使用非Swing的重要级构件C、Swing的JButton不能直接放到Frame上D、以上说法都对9.下列不属于java.event包中定义的事件适配器的是( )A、构件适配器B、焦点适配器C、键盘适配器D、标签适配器10.( )布局管理器使容器中各个构件呈网格布局,平均占据容器空间。

A、FlowLayoutB、BorderLayoutC、GridLayoutD、CardLayout11.容器被重新设置大小后,哪种布局管理器的容器中的组件大小不随容器大小的变化而改变( )A、CardLayoutB、FlowLayoutC、BorderLayoutD、GridLayout12.paint()方法使用哪种类型的参数A、GraphicsB、Graphics2 DC、StringD、 Color13.监听事件和处理事件( )?????A、都由Listener完成B、都由相应事件Listener处注册过的组件完成C、由Listener和组件分别完成D、由Listener和窗口分别完成14.下列哪个属于容器的组件( )A、JFrameB、JButtonC、JPnelD、 Japplet15.下列不属于容器的是( )A、WindowB、TextBoxC、PanelD、ScrollPane16.下面哪个语句是正确的( )A、Object o=new Button(″A″);B、Button b=new Object(″B″);C、Panel p=new Frame();D、Frame f=new Panel();二.填空题1、在需要自定义Swing构件的时候,首先要确定使用那种构件类作为所定制构件的______,一般继承Jpanel类或更具体的Swing类.2、Swing的事件处理机制包括_____、事件和事件处理者。

等级考试二级JAVA考点分析之编写图形用户界面

等级考试二级JAVA考点分析之编写图形用户界面

9.1⽤AWT编写图形⽤户界⾯考点1:编写图形⽤户界⾯ (1)编写图形⽤户界⾯要⽀持跨平台。

(2)Java图形界⾯开发包的发展经历了两个阶段:AWT和Swing。

(3)Java采⽤构件思想开发图形⽤户界⾯。

(4)编写图形⽤户界⾯的基本步骤:⾸先确定界⾯中的构件如何放置,然后使构件响应⽤户的操作,最后掌握各种构件的外观及能响应的⽤户操作。

考点:2java.awt包简介 (1)java.awt包可⽤于编写Java Application和Applet的图形⽤户界⾯。

(2)java.awt包提供的图形⽤户界⾯的功能有:⽤户界⾯构件、事件处理模型、图形和图像⼯具、布局管理器和数据传送。

(3 ) java.awt包含有3个主要的类:构件、容器和布局管理器。

(4) Java.awt包中的类和接⼝主要有AWTEvent, Font, Component, Graphics , MenuComponent,以及各种布局管理器。

考点:3构件(Component) 作为Java图形⽤户界⾯的最基本组成部分,构件是⼀个可以在屏幕上与⽤户交互的以图形⽅式出现的可视化对象。

(1) java.awt.Component类提供了构件类的定义。

(2)构件不能独⽴于容器显⽰出来。

(3)编写⼀般的⽤户界⾯程序使⽤的构件都是Component的⼦类。

(4) Component类的⽅法有:getFont()、getName()、getSize()、paint(Graphics g)、repaint)和update()等。

考点:4容器(Container) Container是Component的⼦类,具有构件的所有性质,并且能够放置基他容器和构件· (1)java.awt.Container类提供了容器类的定义。

(2)⼀个容器能够容纳若⼲个构件。

(3)不同的构件通过调⽤add()⽅法将⾃⼰加⼊相应的容器中。

(3)java练习(GUI程序设计)

(3)java练习(GUI程序设计)

一、单项选择题(总分70)1. (分值:1.4 分)以下不属于文字字型要素的是A: 颜色B: 字体C: 风格D: 字号2. (分值:1.4 分)Java 代码g.drawLine(100,100,100,100)的功能是A: 画一个圆B: 画一条线段C: 画一个点D: 代码是错误的3. (分值:1.4 分)能处理鼠标拖动和移动两种事件的接口是A: ActionListenerB: ItemListenerC: MouseListenerD: MouseMotionListener4. (分值:1.4 分)Java 语言的图像处理功能所在的类是A: PictureB: ImageC: pictureD: image5. (分值:1.4 分)当启动Applet 程序时,首先调用的方法是A: stop()B: init()C: start()D: destroy()6. (分值:1.4 分)在Java 程序中定义一个类,类中有一个没有访问权限修饰的方法,则此方法A: 类外的任何方法都能访问它B: 类外的任何方法都不能访问它C: 类的子类和同包类能访问它D: 只有类和同包类才能访问它7. (分值:1.4 分)在Java 中,有关菜单的叙述错误的是A: 下拉式菜单通过出现在菜单条上的名字来可视化表示B: 菜单条通常出现在JFrame 的顶部C: 菜单中的菜单项不能再是一个菜单D: 每个菜单可以有许多菜单项8. (分值:1.4 分)在Java Applet 程序中,如果对发生的事件做出响应和处理的时候,应该使用的语句是()A: import java.awt.*;B: import java.applet.*;C: import java.awt.event.*;D: import java.io.*;9. (分值:1.4 分)在Java 中,线程的调度策略采用A: 分时式B: 抢占式C: 非分时式D: 非抢占式10. (分值:1.4 分)包含当事件发生时从源传递给监视器的特定事件信息的对象是()A: 事件对象B: 源对象C: 监视器对象D: 接口11. (分值:1.4 分)在Java 中,获取选择框是否被选中的方法是()A: getSelect()B: getSelected()C: isSelect()D: isSelected()12. (分值:1.4 分)要为程序中的按钮button 设置一个热键alt+A,可以采用的代码是()A: button.setMnemonic( )B: button.setMnemonic("alt+A")C: button.setToolTipText( A )D: button.setToolTipText("alt+A")13. (分值:1.4 分)在Java 中,设置字型应使用Graphics 的()方法。

java基础编程练习题

java基础编程练习题

Java基础编程练习题一、基本语法1. 编写一个Java程序,输出“Hello, World!”。

2. 声明一个整型变量并赋值为10,然后输出该变量的值。

3. 编写一个Java程序,实现两个整数的加、减、乘、除运算。

4. 编写一个Java程序,判断一个整数是奇数还是偶数。

5. 编写一个Java程序,交换两个变量的值。

二、控制结构1. 使用ifelse语句判断一个年份是否为闰年。

2. 编写一个Java程序,使用for循环输出1到100的所有偶数。

3. 使用while循环计算1+2+3++100的和。

4. 编写一个Java程序,使用dowhile循环输出1到10的所有整数。

5. 使用switch语句实现一个简单的计算器程序,支持加、减、乘、除四种运算。

三、数组1. 声明一个整型数组,并初始化为{1, 2, 3, 4, 5},然后输出数组中的每个元素。

2. 编写一个Java程序,计算数组中所有元素的和。

3. 实现一个方法,用于查找数组中的最大值。

4. 编写一个Java程序,将一个字符串数组按照字母顺序排序。

5. 使用二维数组输出一个5x5的乘法表。

四、字符串操作1. 编写一个Java程序,连接两个字符串。

2. 实现一个方法,判断一个字符串是否为回文。

3. 编写一个Java程序,将字符串中的所有小写字母转换为大写字母。

4. 使用StringBuilder类实现字符串的逆序输出。

5. 编写一个Java程序,计算一个字符串中某个字符出现的次数。

五、面向对象基础1. 创建一个名为Person的类,包含姓名、年龄和性别属性,并提供相应的构造方法和getter/setter方法。

2. 编写一个Java程序,实现两个Person对象的比较(按年龄比较)。

3. 创建一个Student类,继承自Person类,并添加成绩属性。

4. 编写一个Java程序,实现Student类的多态。

5. 创建一个接口Animal,包含吃、睡觉和叫三个方法,然后创建两个类Dog和Cat实现该接口。

国开《JAVA程序设计语言》形考第三任务代码与输出图片

国开《JAVA程序设计语言》形考第三任务代码与输出图片

国开《JAVA程序设计语言》形考第三任务代码与输出图片一、任务概述本次形考第三任务主要要求同学们运用JAVA程序设计语言,实现一个简单的图形用户界面(GUI),并通过代码输出相应的图片。

二、任务要求1. 请使用JAVA编程语言,实现一个GUI程序。

2. 在GUI程序中,展示一张图片。

3. 确保程序的运行环境为Windows操作系统。

4. 提交代码及输出图片。

三、任务步骤步骤1:创建GUI程序框架首先,我们需要使用JFrame创建一个窗口对象,作为我们的GUI程序的主界面。

import javax.swing.JFrame;public class ImageDisplay {public static void main(String[] args) {JFrame frame = new JFrame("图片展示");frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);frame.setSize(800, 600);// 添加图片展示组件frame.add(new ImagePanel());frame.setVisible(true);}}步骤2:创建图片展示组件接下来,我们需要创建一个继承自JPanel的类,用于展示图片。

import javax.swing.*;import java.awt.*;public class ImagePanel extends JPanel {private Image image;public ImagePanel() {// 从文件中加载图片image = new ImageIcon("path/to/image.jpg").getImage(); }@Override// 在组件上绘制图片g.drawImage(image, 100, 100, null);}}步骤3:运行并测试程序完成上述代码编写后,我们可以运行程序,并在窗口中查看输出的图片。

编程选择题40道:JavaFX:图形用户界面设计.Tex

编程选择题40道:JavaFX:图形用户界面设计.Tex

1.在JavaFX中,用于创建一个窗口的类是?o A. Sceneo B. Stageo C. Groupo D. BorderPane答案: B解析: Stage类在JavaFX中用于创建主要的窗口。

它是所有JavaFX应用程序的起点。

2.JavaFX中的Scene对象需要什么参数来初始化?o A. 一个Node和背景颜色o B. 一个Stage和宽度o C. 宽度、高度和一个Nodeo D. 宽度、高度和背景音乐答案: C解析: Scene在JavaFX中通过指定宽度、高度和一个作为其根的Node来初始化。

3.下列哪个JavaFX类用于实现一个按钮?o A. Labelo B. TextFieldo C. Buttono D. CheckBox答案: C解析: Button类用于创建用户可以点击的按钮。

4.JavaFX中使用哪种布局管理器可以将所有组件放入一个网格中,每个组件占据一个单元格?o A. BorderPaneo B. GridPaneo C. VBoxo D. HBox答案: B解析: GridPane布局管理器用于创建网格布局,其中每个组件可以定位到特定的行和列。

5.下列哪个方法用于在JavaFX的Pane中添加一个Node?o A. addNode(Node node)o B. setNode(Node node)o C. getChildren().add(Node node)o D. add(Node node)答案: C解析: 使用Pane的getChildren().add(Node node)方法将Node添加到Pane 中。

6.JavaFX中,用于处理用户输入的事件处理模型基于?o A. 观察者模式o B. 单例模式o C. 工厂模式o D. 适配器模式答案: A解析: JavaFX的事件处理模型基于观察者模式,允许对象注册并接收事件通知。

7.当一个Button被点击时,哪个事件对象被触发?o A. ActionEvento B. MouseEvento C. KeyEvento D. DragEvent答案: A解析: 当按钮被点击时,触发的是ActionEvent。

java图形化界面练习及答案

java图形化界面练习及答案

作业标题:第四次练习题(总分:100。

0 得分:78。

0分)一、单选题(共有题目15题,共计60。

0分)1。

下列属于容器的组件有A.JButtonB。

JPaneC.CanvasD.JTextArea学生的答案: B标准答案: B该题分数:4.0学生得分:4.0分2。

下列方法中,不属于WindowListener接口的是A。

windowOpened()B.windowClosed()C。

windowActivated()D。

windowAdapter学生的答案: D标准答案: D该题分数:4.0学生得分: 4。

0分3.下列不属于Swing中组件的是( ).A.JPanelB.JTableC。

MenuD.JFrame学生的答案: C标准答案: C该题分数:4。

0学生得分:4。

0分4.以下Swing组件中哪一个不是顶层容器组件( )。

A。

框架B。

对话框C.面板D。

小程序学生的答案: C标准答案: A该题分数:4.0学生得分:0分5。

对于Swing基本控件单选框,若要使两个单选框对象之间具有相互排斥的关系,需要( )。

A.创建两个单选框对象时定义相同的对象名B.将两个单选框对象放在同一个面板上定义一个ButtonGroup对象group,将两个单选框对象加到group中D。

让两个单选框排成一行或一列学生的答案: C标准答案: C该题分数:4.0学生得分: 4.0分6.容器被重新设置大小后,( )布局管理器的容器中的组件大小不随容器大小的变化而改变。

A。

CardLayoutB。

FlowLayoutC.BorderLayoutD。

GridLayout学生的答案: B标准答案: B该题分数:4.0学生得分:4。

0分下列哪个类创建的对象可以触发ActionEvent事件( ). A。

java。

awt.Button类B。

java。

lang包的子类C.java.util。

Date类D。

java。

lang。

StringBuffer类学生的答案: A标准答案: A该题分数:4。

java程序设计 实训题目

java程序设计 实训题目

java程序设计实训题目
以下是一些Java程序设计实训题目,供您参考:
1. 编写一个Java程序,实现一个简单的计算器,可以进行加、减、乘、除
运算。

要求使用面向对象的思想,将计算器的功能封装在一个类中,并提供一个主函数用于测试。

2. 编写一个Java程序,实现一个简单的文本编辑器,可以打开、保存、编
辑和打印文本文件。

要求使用Java的I/O流和文件操作类库,以及图形用
户界面库(如Swing或JavaFX)。

3. 编写一个Java程序,实现一个简单的聊天室,支持多人同时在线聊天。

要求使用Java的多线程机制和网络编程技术(如Socket编程),并实现基本的用户注册、登录和消息发送功能。

4. 编写一个Java程序,实现一个简单的数据库管理系统,可以创建、删除、查询和更新数据库中的记录。

要求使用Java的JDBC API连接数据库,并
使用SQL语句进行操作。

5. 编写一个Java程序,实现一个简单的图像处理软件,可以对图像进行缩放、旋转、裁剪和滤镜处理。

要求使用Java的图像处理库(如Java Advanced Imaging API)和图形用户界面库(如Swing或JavaFX)。

6. 编写一个Java程序,实现一个简单的邮件发送系统,可以发送HTML格式的邮件。

要求使用Java的邮件发送库(如JavaMail API),并支持SMTP协议和附件上传功能。

7. 编写一个Java程序,实现一个简单的在线考试系统,可以随机生成试题、计时考试时间并自动评分。

要求使用Java的多线程机制和网络编程技术(如Socket编程),并实现基本的用户登录、答题和提交功能。

java培训笔记(详细)版含作业练习-图形界面详解

java培训笔记(详细)版含作业练习-图形界面详解

四. 创建GUI 步骤三:在容器中加入组件
五. 创建GUI 步骤四:创建事件处理器
六. FlowLayout流式布局管理器
最简单的布局管理器,按照组件的添加次序将它们从左到右地放置在容器中。当到达容器边界时,组件将放置在下一行中。
FlowLayout允许以左对齐、居中对齐(默认方式)或右对齐的方式排列组件。特性:
. 不限制它所管理的组件的大小, 而是允许它们有自己的最佳大小。
. 当容器被缩放时,组件的位置可能会变化,但组件的大小不改变。
FlowLayout的构造方法如下:
java.awt包中提供了一个抽象类Component,它是所有除了菜单类组件之外的AWT组件的父类。Container类表示容器,继承
了Component类。容器用来存放别的组件, 有两种类型的容器:Window和Panel。
1. Window和它的子类Frame
Insets getInsets() :返回容器的边框尺寸的大小
Validate():使容器内修改过的组件生效
三. 创建GUI 步骤二:布局管理器
组实例,通过它来自动进行组件的
南北区域的组件保持最佳高度,宽度被水平拉伸至和所在区域一样宽;
位于中区域的组件的宽度和高度都被拉伸至和所在区域一样大小。
. 垂直拉伸,东、西和中区域也拉伸;
水平拉伸,南、北和中区域也拉伸;
. 中区域没有组件,也会分配空间显示容器的背景颜色;
f.setBackground(Color.BLUE);
f.setVisible(true);
}
}
Index:组件存放的位置
constraints:通常是布局管理器的对象
Component getComponent()

Java第四单元练习题-图形用户界面

Java第四单元练习题-图形用户界面

4图形用户界面4.1单项选择题1. 如果容器组件p的布局是BorderLayout,则在p的下边中添加一个按钮b,应该使用的语句是()A、(b);B、(b,"NORth");C、(b,"South");D、(p,"North");2.JPanel的默认布局管理器是()。

A.FlowLayout B.CardLayout C.BorderLayout D.GridLayout3.容器类的父类是()。

A.B.C.D.哪一个布局管理器使用的是组件的最佳尺寸()A.FlowLayout B.BorderLayout C.GridLayout D.CardLayout5.关于AWT和Swing说法正确的是()。

A.Swing是AWT的子类B.AWT在不同操作系统中显示相同的风格C.AWT不支持事件模型D.Swing在不同的操作系统中显示相同的风格6.关于使用Swing的基本规则,下列说法正确的是()。

A.Swing组件可直接添加到顶级容器中B.要尽量使用非Swing的重要级组件C.Swing的JButton不能直接放到JFrame上D.以上说法都对7.在Java编程中,Swing包中的组件处理事件时,下面()是正确的。

A.Swing包中的组件也是采用事件的委托处理模型来处理事件的B.Swing包中的组件产生的事件类型,也都带有一个J字母,如JMouseEventC.Swing包中的组件也可以采用事件的传递处理机制D.Swing包中的组件所对应的事件适配器也是带有J字母的,如JMouseAdapter8.能将容器划分为"East"、"South"、"West"、"North"、"Center"五个区域的布局管理器是()A)BorderLayout B)FlowLayoutC)GridLayout D)CardLayout9. 如果有一个对象myListener ( 其中myListener 对象实现了ActionListener 接口), 下列哪条语句使得myListener 对象能够接受处理来自于smallButton按钮对象的动作事件A. (myListener);B. (myListener);C. (myListener);D. (myListener);10. 下列各种布局管理器中Window类、JDialog类和JFrame类的默认布局是()A.FlowLayout B.CardLayout C.BorderLayout D.GridLayout11. JFrame对象默认的布局管理器是()A、FlowLayoutB、BorderLayoutC、CardLayoutD、null12. 在下列各种容器中,最简单的无边框的又不能移动和缩放的只能包含在另一种容器中的容器是()A.Window B.JDialog C.JFrame D.JPanel13 下列关于组件类的描述中,错误的是()A.组件类中包含了文本组件类(TextComponent)和菜单组件类(MenuComponent)B.标签(JLabel)和按钮(JButton)是组件类(Component)的子类C.面板(JPanel)和窗口(Window)是容器类(Container)的子类D.文本框(JTextField)和文本区(JTextArea)是文本组件类(JTextComponent)的子类14 在对下列语句的解释中,错误的是()(this);A.but是某种事件对象,如按钮事件对象B.this表示当前容器C.ActionListener是动作事件的监听者D.该语句的功能是将but对象注册为this对象的监听者15. 下列关于菜单和对话框的描述中,错误的是()A.JFrame容器是可以容纳菜单组件的容器B.菜单条中可包含若干个菜单,菜单中又可包含若干菜单项,菜单项中还可包含菜单子项C.对话框内不可以含有菜单条D.对话框与JFrame一样都可作为程序的底层容器16. 所有GUI标准组件类的父类是()A.JButtom B.List C.Component D.Container17.4.2填空题1.在需要自定义Swing构件的时候,首先要确定使用那种构件类作为所定制构件的______,一般继承Jpanel类或更具体的Swing类.2.Swing的事件处理机制包括__________、事件和事件处理者。

java图形界面设计含答案

java图形界面设计含答案

java图形界面设计含答案十一章图形用户界面程序设计入门一.选择题:1. 容器Panel和applet缺省使用的布局编辑策略是 BA、BorderLayoutB、FlowLayoutC、GridLayoutD、CarLayout2. .applet类的直接父类是: BA、Component类B、Container类C、Frame类D、Panel类3. .Swing与AWT的区别不包括 DA、Swing是由纯Java实现的轻量级构件B、Swing没有本地代码C、Swing不依赖操作系统的支持D、Swing支持图形用户界面4. 在编写Java applet程序时,若需要对发生事件作出响应和处理,一般需要在程序的开头写上 B _语句。

A、import java.awt.*;B、import java.applet.*;C、import java.io.*;D、import java.awt.event.*;5. 下面哪个操作是applet可以做的? BA、读取客户端部分系统变量B、读取客户端文件C、在客户端主机上创建新文件D、在客户端装载程序库6. 在Java中,所有类的根类是 AA./doc/302358554.html,ng.Object B./doc/302358554.html,ng.ClassC.java.applet.Applet D.java.awt.Frame7.在JAVA中实现图形用户界面可以使用组建AWT和组件 AA、swingB、SwingC、JOptionPaneD、import8.在JAVA中,一般菜单格式包含有下列类对象 DA、JMenuBarB、JMenuC、JMenuItemD、JMenuBar、JMenu、JMenuItem9.JAVA中提供了多种布局对象类。

其中使用卡片式布局的是 DA、FlowLayoutB、BoederLayoutC、BoxLayoutD、CardLayout10. 下列关于Applet的叙述中,错误的是 AA、Applet是Java类,所以可以由JDK中的解释器java.exe直接解释运行B、Applet应该定义为java.applet.Applet类或javax.swing.JApplet类的子类C、Applet与Application的主要区别在执行方式上D、通过在HTML文件中采用标记可以向Applet传递参数11 与Applet生命周期相关的方法的数量是 AA、4种B、3种C、2种D、5种12下列关于Applet的叙述中,错误的是 AA、Applet是Java类,所以可以由JDK中的解释器java.exe直接解释运行B、Applet应该定义为java.applet.Applet类或javax.swing.JApplet类的子类C、Applet与Application的主要区别在执行方式上D、通过在HTML文件中采用标记可以向Applet传递参数13 java中对Applet设置了严格的安全限制。

实验三Java图形用户界面编程

实验三Java图形用户界面编程
static Double subNumber;
static Double mulNumber;
static Double divNumber;
static Double equalNumber;
static Double temp;
static JTextArea result=new JTextArea(1,20);
四.程序代码
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;//导入类包
class simplecalculator
{
static String point=new String();
static String Amal=new String();
static String SIX=new String();
static String SEVEN=new String();
static String EIGHT=new String();
static String NINE=new String();
static String ZERO=new String();
ForResult.add(result);
ForButton7_clear.setLayout(FLO);
ForButton7_clear.add(seven);
ForButton7_clear.add(eight);
ForButton7_clear.add(nine);
ForButton7_clear.add(div);
ForButton1_sub.add(FenZhiYi);
ForButton0_equal.setLayout(FLO);

第七章 Java图形用户界面练习

第七章 Java图形用户界面练习

第七章图形用户界面在应用程序开发中,友好的用户界面是一个最基本的要求,本章将使用Java中提供的java.AWT和javax.Swing类包中有关组件设计用户界面。

7.1 实验一:一般用户界面的实现实验目的(1). 了解AWT和Swing常用容器组件和基本组件的作用和功能。

(2). 了解各类布局管理器的作用和功能。

(3). 使用各类布局管理器和组件创建程序的图形用户界面。

实验要求使用java.AWT和javax.Swing类包中提供了设计用户界面的各种组件,诸如Frame、JFrame、Panel、JPanel等容器组件、TextField、JTextField、Label、JLabel、Button、JButton 等基本组件等,编写程序创建并实现简洁明了的用户界面。

实验内容使用AWT和Swing组件创建一般的应用程序用户界面。

实验示例7.1.1在前边定义了公司的职员信息类,成员变量包括ID(身份证)、name(姓名)、sex(性别)、birthday(生日)、home(籍贯)、address(居住地)和number(职员号),设计一个录入或显示职工信息的程序界面(以FlowSaylout布局安排组件)。

实现该示例的步骤如下:⑴简要分析可以采用Frame容器组件构建用户界面,使用Label组件显示标识,使用TextField组件输入或显示个人信息,使用Button组件确定诸如输入、显示或退出操作。

可以建立一个Frame类的派生类EmployeeMess来完成用户界面的构建。

⑵根据上述简要分析,给出如下参考程序代码(EmployeeMess.java):/*公司职员信息界面程序 EmployeeMess.java*使用AWT组件构建,采用FlowLayout布局*/图7-1 示例7.1.1用户界面import java.awt.*;public class EmployeeMess extends Frame{TextField ID = new TextField(18);TextField name = new TextField(10);TextField birthday = new TextField(10);TextField sex = new TextField(2);TextField home = new TextField(18);TextField address = new TextField(18);TextField brithday = new TextField(10);TextField number = new TextField(5);Button oprate = new Button("操作");Button exit = new Button("退出");public EmployeeMess(){super("公司职员信息");this.setLayout(new FlowLayout());this.add(new Label("身份证号码")); //把组件加入到框架窗口中this.add(ID);this.add(new Label("姓名"));this.add(name);this.add(new Label("性别"));this.add(sex);this.add(new Label("出生日期"));this.add(birthday);this.add(new Label("籍贯"));this.add(home);this.add(new Label("居住地"));this.add(address);this.add(new Label("职工号"));this.add(number);this.add(oprate);this.add(exit);this.pack();//按合适大小显示对象this.setVisible(true); //设置组件是可见的}} ⑶ 编译EmployeeMess.java 程序,生成EmployeeMess.class 类文件,以供其他应用程序所用。

Java-第15章图形用户界面设计例题

Java-第15章图形用户界面设计例题

Java-第15章图形⽤户界⾯设计例题Example15_1.java JFrame常⽤⽅法import javax.swing.*;import static javax.swing.JFrame.*;public class Example15_1 {public static void main(String args[]) {JFrame window1=new JFrame("撤销窗⼝");JFrame window2=new JFrame("退出程序");window1.setBounds(60,100,188,108);window2.setBounds(260,100,188,108);window1.setVisible(true);window1.setDefaultCloseOperation(DISPOSE_ON_CLOSE);window2.setVisible(true);window2.setDefaultCloseOperation(EXIT_ON_CLOSE);}}Example 15_2.java菜单条、菜单、菜单项public class Example15_2 {public static void main(String args[]) {WindowMenu win=new WindowMenu("带菜单的窗⼝",20,30,200,190);}}import javax.swing.*;import java.awt.event.InputEvent;import java.awt.event.KeyEvent;import static javax.swing.JFrame.*;public class WindowMenu extends JFrame{JMenuBar menubar ;JMenu menu,subMenu;JMenuItem item1,item2;public WindowMenu() {}public WindowMenu(String s,int x,int y,int w,int h) {init(s);setLocation(x,y);setSize(w,h);setVisible (true);setDefaultCloseOperation(DISPOSE_ON_CLOSE);}void init(String s) {setTitle(s);menubar =new JMenuBar();menu=new JMenu("菜单");subMenu=new JMenu("软件项⽬");item1=new JMenuItem("JAVA话题",new ImageIcon("D:\\java\\eclipse\\5.24作业\\src\\a.gif"));//图⽚所在位置item2=new JMenuItem("动画话题",new ImageIcon("D:\\java\\eclipse\\5.24作业\\src\\b.gif"));//图⽚所在位置item1.setAccelerator(KeyStroke.getKeyStroke('A'));item2.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_S,InputEvent.CTRL_MASK));menu.add(item1);menu.addSeparator();menu.add(item2);menu.add(subMenu);subMenu.add(new JMenuItem("汽车销售系统",new ImageIcon("D:\\java\\eclipse\\5.24作业\\src\\c.gif")));subMenu.add(new JMenuItem("农场信息系统",new ImageIcon("D:\\java\\eclipse\\5.24作业\\src\\d.gif")));menubar.add(menu);setJMenuBar(menubar);}}Example15_3 常⽤组件public class Example15_3 {public static void main (String args[]) {ComponentInWindow win =new ComponentInWindow(); win.setBounds(100,100,310,260);win.setTitle("常⽤组件");}}import java.awt.*;import javax.swing.*;import static javax.swing.JFrame.*;public class ComponentInWindow extends JFrame{JTextField text;JButton button;JCheckBox checkBox1,checkBox2,checkBox3 ;JRadioButton radio1,radio2;ButtonGroup group;JComboBox comBox;JTextArea area ;public ComponentInWindow() {init();setVisible(true);setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); }void init() {setLayout(new FlowLayout());add(new JLabel("⽂本框"));text=new JTextField(10);add(text);add(new JLabel("按钮:"));button =new JButton("确定");add(button);add(new JLabel("选择框:")) ;checkBox1=new JCheckBox("喜欢⾳乐");checkBox2=new JCheckBox("喜欢旅游");checkBox3=new JCheckBox("喜欢篮球");add(checkBox1);add(checkBox2);add(checkBox3);add(new JLabel("单选按钮:"));group=new ButtonGroup();radio1=new JRadioButton("男");radio2=new JRadioButton("⼥");group.add(radio1);group.add(radio2);add(radio1);add(radio2);add(new JLabel("下拉列表:"));comBox=new JComboBox();comBox.addItem("⾳乐天地");comBox.addItem("武术天地");comBox.addItem("象棋乐园");add(comBox);add(new JLabel("⽂本区:"));area=new JTextArea(6,12);add(new JScrollPane(area));}}Example15_4常⽤布局public class Example15_4{public static void main(String args[]){WindowBoxLayout win=new WindowBoxLayout () ; win. setBounds (100, 100, 310,260);win. setTitle("嵌套盒式布局容器");}}import javax.swing.*;public class WindowBoxLayout extends JFrame{Box baseBox,boxV1,boxV2;public WindowBoxLayout() {setLayout (new java.awt. FlowLayout()) ;init() ;setVisible (true) ;setDefaultCloseOperation (JFrame. EXIT_ON_CLOSE) ; }void init () {boxV1=Box.createVerticalBox() ;boxV1. add (new JLabel ("姓名")) ;boxV1.add (Box.createVerticalStrut(8)) ;boxV1.add (new JLabel ("email")) ;boxV1. add (Box.createVerticalStrut(8)) ;boxV1.add (new JLabel ("职业")) ;boxV2=Box. createVerticalBox() ;boxV2. add (new JTextField(10) ) ;boxV2.add (Box.createVerticalStrut(8)) ;boxV2.add(new JTextField(10)) ;boxV2. add (Box. createVerticalStrut(8));boxV2. add (new JTextField(10));baseBox=Box.createHorizontalBox() ;baseBox.add (boxV1) ;baseBox.add (Box.createVerticalStrut(10)); baseBox.add(boxV2) ;add (baseBox) ;}}Example15_6 ActionEvent事件public class Example15_6 {public static void main(String args[]) { WindowActionEvent win=new WindowActionEvent(); win.setBounds(100, 100, 460,360);win. setTitle ("处理ActionEvent事件");}}import java.awt. *;import javax.swing.*;public class WindowActionEvent extends JFrame{ JTextField inputText;JTextArea textShow;JButton button;PoliceListen listener;public WindowActionEvent() {init() ;setVisible(true) ;setDefaultCloseOperation (JFrame.EXIT_ON_CLOSE); }void init() {setLayout (new FlowLayout()) ;inputText = new JTextField(10);button = new JButton("读取");textShow = new JTextArea(9, 30) ;listener= new PoliceListen();listener.setJTextField(inputText);listener.setJTextArea (textShow) ;inputText.addActionListener (listener);add (inputText) ;add (button) ;add (new JScrollPane (textShow)) ;}}import java.awt.event.*;import java.io.*;import javax. swing.*;public class PoliceListen implements ActionListener{ JTextField textInput;JTextArea textShow;public void setJTextField (JTextField text) {textInput = text;}public void setJTextArea (JTextArea area) {textShow = area;}public void actionPerformed (ActionEvent e) { textShow.setText (null);try { File file = new File (textInput.getText());FileReader inOne = new FileReader (file) ;BufferedReader inTwo = new BufferedReader (inOne) ;String s=null;while((s=inTwo. readLine()) !=null)textShow.append(s+"n") ;inOne.close();inTwo.close();}catch (Exception ee) {textShow. append (ee.toString());}}}注意:如果出现⽆法解析的情况,可将错误代码重新键盘输⼊。

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

实验八Java图形用户界面编程练习实验目的1、掌握 Java 的 GUI 设计技术2、掌握 AWT 和 Swing 的应用技巧实验要求1、编写一个程序学习使用处理ActiongEvent事件2、编写一个程序学习使用布局类实验内容1.猜数字游戏实验目的:练习图形用户界面编程,学习处理ActionEvent事件。

实用要求:要求程序中要有2个按钮buttonGetNumber和buttonNumber,用户单击buttonGetNumber 按钮可以得到一个随机数,然后在文本框中输入猜测数字,再单击buttonNumber按钮,程序根据用户的猜测给出提示信息。

运行效果示例:程序模板:按模板要求,将【代码】替换为Java程序代码。

GuessExample.javaimport java.awt.*;import java.awt.event.*;import java.applet.*;public class GuessExample extends Applet implements ActionListener {int number;TextField inputNumber;Label feedBack;Button buttonGetNumber,buttonEnter;public void init(){buttonGetNumber=new Button("得到一个随机数");feedBack=new Label ("无反馈信息",Label.CENTER);feedBack.setBackground(Color.green);inputNumber=new TextField("0",5);buttonEnter=new Button("确定");【代码1】//按钮buttonEnter增加ActionEvent事件监视器,监视器为当前Java Applet。

【代码2】//按钮buttonGetNumber增加ActionEvent事件监视器,监视器为当前Java Applet。

add(new Label("获取1-100之间的随机数:"));add(buttonGetNumber);add(new Label("输入您的猜测:"));add(inputNumber);add(new Label("单击确定按钮:"));add(buttonEnter);add(new Label("反馈信息:"));add(feedBack);}public void actionPerformed(ActionEvent e){if(【代码3】) //判断事件源是否是buttonGetNumber。

{number=(int)(Math.random()*100)+1;}else if(【代码4】) //判断事件源是否是buttonEnter。

{int guess=0;try {guess=Integer.parseInt(【代码5】); //返回inputNumber中的文本。

if(guess==number){【代码6】//feedBack设置提示文本:"猜对了!"。

}else if(guess>number){【代码7】//feedBack设置提示文本:"猜大了!。

inputNumber.setText(null);}else if(guess<number){【代码8】//feedBack设置提示文本:"猜小了!。

inputNumber.setText(null);}}catch(NumberFormatException event){【代码9】 //feedBack设置提示文本:"请输入数字字符"。

}}}}实验后的练习:1、将给上述程序增加记录猜测次数的功能,每次反馈这是第几次猜测,当猜测成功时反馈一共猜测了几次。

2.布局和日历实验目的:学习使用布局类实用要求:利用Swing编写一个GUI程序,JFrame使用BorderLayout布局。

在JFrame的中心添加一个Panel容器pCenter, pCenter的布局是7行7列的GridLayout布局,pCenter中放置49个标签,用来显示日历。

JFrame的北面添加一个Panel容器pNorth,其布局是FlowLayout 布局,pNorth放置两个按钮nextMonth和previousMonth,单击nextMonth按钮,可以显示当前月的下一月的日历;单击previousMonth按钮,可以显示当前月的上一月的日历。

JFrame 的南面添加一个Panel容器pSouth,其布局也是FlowLayout,pSouth中放置一个标签来显示一些日历信息。

运行效果示例:程序模板:按模板要求,将【代码】替换为Java程序代码。

CalendarExample.javaimport java.util.*;import java.awt.*;import java.awt.event.*;import java.applet.*;import javax.swing.*;public class CalendarExample extends JFrame implements ActionListener{JLabel a[]=new JLabel[42];JButton titleName[]=new JButton[7];String name[]={"星期日","星期一","星期二","星期三", "星期四","星期五","星期六"};JButton nextMonth,previousMonth;int year=2008,month=1;CalendarBean calendar;JLabel showMessage=newJLabel("",JLabel.CENTER);public CalendarExample(){【代码1】//将Java Applet的布局设置为BorderLayout 布局。

JPanel pCenter=new JPanel();【代码2】//将pCenter的布局设置为7行7列的GridLayout 布局。

for(int i=0;i<7;i++){titleName[i]=new JButton(name[i]);【代码3】//向pCenter添加组件titleName[i]。

}for(int i=0;i<42;i++){a[i]=new JLabel("",JLabel.CENTER);【代码4】//向pCenter添加组件a[i]。

}calendar=new CalendarBean();calendar.setYear(year);calendar.setMonth(month);String day[]=calendar.getCalendar();for(int i=0;i<42;i++){a[i].setText(day[i]);}nextMonth=new JButton("下月");previousMonth=new JButton("上月");【代码5】//为nextMonth按钮添加Action事件监听器。

【代码6】//为previousMonth按钮添加Action事件监听器。

JPanel pNorth=new JPanel(),pSouth=new JPanel();pNorth.add(previousMonth);pNorth.add(nextMonth);pSouth.add(showMessage);showMessage.setText("日历:"+calendar.getYear()+"年"+ calendar.getMonth()+"月" );ScrollPane scrollPane=new ScrollPane();scrollPane.add(pCenter);【代码7】// 将scrollPane添加到Frame的中心区域。

【代码8】// 将pNorth添加到Frame的北面区域。

【代码9】// 将pSouth添加到Frame的南区域。

}public static void main(String[] args){【代码9】//实现main方法,显示日历界面,同时在关闭界面时退出程序。

}public void actionPerformed(ActionEvent e){if(e.getSource()==nextMonth){month=month+1;if(month>12)month=1;calendar.setMonth(month);String day[]=calendar.getCalendar();for(int i=0;i<42;i++){a[i].setText(day[i]);}}else if(e.getSource()==previousMonth){month=month-1;if(month<1)month=12;calendar.setMonth(month);String day[]=calendar.getCalendar();for(int i=0;i<42;i++){a[i].setText(day[i]);}}showMessage.setText("日历:"+calendar.getYear()+"年"+calendar.getMonth()+"月" );}}class CalendarBean{String day[];int year=2008,month=0;public void setYear(int year){this.year=year;}public int getYear(){return year;}public void setMonth(int month){this.month=month;}public int getMonth(){return month;}public String[] getCalendar(){String a[]=new String[42]; //存放日期的一维数组。

相关文档
最新文档