应用重载的构造方法,体会对象创建的要求和特点。
③应用输出输入流类(字节)的成员方法对字节进行输出输入操作。 体会不同数据输出输入操作的不同。
④应用输出输入流类(字符)的构造方法创建输出输入流对象。 应用重载的构造方法,体会对象创建的要求和特点。
⑤应用输出输入流类(字符)的成员方法对字节进行输出输入操作。 体会不同数据输出输入操作的不同。 ⑥程序设计中的差错。
了解并熟悉Java输出输入流不正确操作过程中产生的异常类型。 ⑦编写实验报告
根据以下的实验报告要求,完成并提交实验报告。
实验六:简单图形用户界面的设计
一 实验目的
1、 掌握Java GUI主要的类及方法的创建及使用。 2、 掌握Java 各种布局管理器的创建及使用。
3、 掌握 Java 对GUI的监听机制原理及主要GUI的监听接口。
4、 通过试验,能够应用GUI类及布局管理器设计能够相应用户请求简单的图形界面。 二 实验原理
Java JDK中的Swing包中包含用来开发Java图形用户界面的类库,应用这些类库可开发出人性化的图形界面,并通过应用Java对图形组件的监听机制相应用户的各种操作请求。 Java Swing中的类有很多,各个类中又有很多的方法;在应用这些图形类和其中的方法过程中,必须对其中的主要的类和主要方法非常熟悉。应用Swing能够设计出人性化的图形界面,但为响应应用的操作,必须要应用Java的监听机制,开发者必须熟悉Java监听机制的原理及开发过程。
为开发Java Swing 图形界面,需要了解熟悉Swing中如下的组件类及其中的方法:JFrame、JLabel、JDialog、JOptionPane、JTextField、JPasswordField、JButton、JCheckBox、JRadioBuntton、JComboBox、JList、JTextArea、JScrollPane、JMemu、JMenuItem等;另外还有管理上述组件的布局管理器类:FlowLayout、GridLayout、BorderLayout、BoxLayout、GridBagLayout、CardLayout和自定义布局管理器等;
上述组件和布局管理器,需要配合Java中对不同组件的监听接口的实现来相应用户的操作请求。 三 实验环境
1、JDK1.6 for windows 2、Eclipse3.3或JCreator4.0 3、JDK API 6 4、PC机配置要求:
CPU 内存 硬盘容量 操作系统 最低CR 1GHz,建议P4 2.0以上 最低256M,建议512M以上 10G以上 Windows 2000 系列、Windows XP 系列
四 实验内容和步骤 1、实验内容:
①应用Swing组件类设计图形界面并根据组件设计相应的监听接口实现响应功能:
②尝试应用组件类中的其他方法。 2、实验步骤:
①根据Swing界面设计要求阅读Swing API说明。 了解熟悉Swing中主要的组件类及其中的方法。 ②设计静态界面。
根据要设计的图形界面,找出相应的组件类,应用组件类的构造方法创建组件(阅读Swing API说明)。
③组件布局。
根据要设计的图形要求,选取合理的布局管理器,应用布局管理器构造方法创建布局管理器对象,对组件进行布局,并体会不同布局管理器的特点。(阅读Swing API说明)
④监听器设计。
根据图形界面应用组件的不同,实现相应的监听器接口对组件进行监听以相应用户的请求。(阅读Swing API说明)
根据以下的实验报告要求,完成并提交实验报告。
实验七:基于Swing应用程序设计
一 实验目的
1、熟悉Swing的基本组件,包括多行文本输入框、带滚动面板和按钮等; 2、熟悉布局管理器
3、了解GUI图像用户界面的设计方法 4、掌握Java组件的事件处理机制
5、掌握图形用户界面程序与输入输出流的综合应用 二 实验原理 1、Swing组件
在javax.swing包中,定义了两种类型的组件:顶层容器(JFrame,JApplet,JDialog和JWindow)和轻量级组件。Swing组件都是AWT的Container类的直接子类和间接子类。类的层次结构如下: java.awt.Component
-java.awt.Container -java.awt.Window
-java.awt.Frame-javax.swing.JFrame -javax.Dialog-javax.swing.JDialog -javax.swing.JWindow
-java.awt.Applet-javax.swing.JApplet -javax.swing.Box -javax.swing.Jcomponet 组件从功能上分可分为:
1) 顶层容器:JFrame,JApplet,JDialog,JWindow共4个 2) 中间容器:JPanel,JScrollPane,JSplitPane,JToolBar 3) 特殊容器:在GUI上起特殊作用的中间层,如JInternalFrame,JLayeredPane,JRootPane.
4) 基本控件:实现人际交互的组件,如Jbutton, JComboBox, JList, JMenu, JSlider, JtextField。
5) 不可编辑信息的显示:向用户显示不可编辑信息的组件,例如JLabel, JProgressBar, ToolTip。
6) 可编辑信息的显示:向用户显示能被编辑的格式化信息的组件,如JColorChooser, JFileChoose, JFileChooser, Jtable, JtextArea。
Swing是AWT的扩展,它提供了许多新的图形界面组件。Swing组件以\开头,常见的组件有按钮(JButton)、文本框(JTextField)、下列框(JComboBox)标签(JLabel)、复选框(JCheckBox)、菜单(JMenu)等,还增加了一个丰富的高层组件集合,如表格(JTable)、树(JTree)。 2、布局管理器
Java通过布局管理器对所有构件进行管理,以支持跨平台的动态布局效果。常见布局管理器有5种,见表1所示。
表1 常见布局管理器及特点 布局 FlowLayout布局 特点 组件按照加入的先后顺序从左到右排放,放不下再换至下一行,部件大小不变,是Applet和Panel的默认布局。 将容器分为东(East)、南(South)、西(West)、北(North)、BorderLayout布局 中(Center)五个区域,加入组件用命令:add(方位名字符串, 组件)。是Frame、Dialog的默认布局。 将容器空间分为若干行乘若干列的网格区域,组件按从左向GridLayout布局 右,从上到下的次序被加到各单元格中,组件的大小将调整为与单元格大小相同。 CardLayout布局 将组件叠成卡片的形式,每个组件占用一块卡片,通过卡片的翻动选择要显示的组件。 在GridLayout的基础上发展而来,将整个容器分成若干行、GridBagLayout布局 列组成的单元,但各行可以有不同的高度,每栏也可以有不同的宽度,一个部件可以占用一个、也可以占用多个单元格。 3、Swing图形用户界面设计流程
Swing的程序设计一般可按照下列流程进行: 1) 引入Swing包 2) 选择\外观和感觉\3) 设置顶层容器 4) 设置按钮和标签 5) 向容器中添加组件 6) 在组件周围添加边界 7) 进行事件处理 4、事件处理
(1) 事件处理机制
? 涉及对象有事件源、事件、事件处理者(监听者)。事件源是发生事件的对象;事件对象是提供事件相关信息的对象;事件处理者则是消化事件,完成特定处理的对象。
? Java采用委托(授权)事件处理机制;事件源对其可能发生的事件分别授权不同的事件处理者处理;通过如下命令注册监听者:
addXXXListener(XXXListener a);
其中,XXX与相应事件类型相关,例如:按钮点击动作事件对应标记为“Action”. 要注销监听者使用removeXXXListener(XXXListener a);
? 事件处理者必须实现某类事件相对应的接口,只有符合接口规范的对象才能作为事件处理者,通过编写相应方法实现事件的处理。
例如,ActionListener接口中定义了如下方法用来处理事件。 public void actionPerformed(ActionEvent e);
? Java为每类事件提供了一个相应的接口。 (2) 事件与事件处理
? java.util.EventObject是所有事件类的父类;java.awt.AWTEvent是所有AWT事件类的父类,其包括低级事件和基于语义的高级事件。
? XXXEvent对应的事件处理接口通常为XXXListener,常见接口的事件处理方法见表2。
表2事件接口及处理方法 描述信息 点击按钮、点击菜单项、文本框按回车等动作 选择了可选项的项目 窗口事件 WindowListener windowClosing(WindowEvent) windowOpened(WindowEvent) windowIconified(WindowEvent) windowDeiconified (WindowEvent) windowClosed(WindowEvent) windowActivated(WindowEvent) windowDeactivated(WindowEvent) ? 事件适配器
Java中为那些具有多个方法的监听者接口提供了事件适配器类,这个类通常命名为XxxAdapter,在该类中以空方法体实现了相应接口的所有方法,程序员设计可通过继承适配器类来编写监听者类,在类中只需给出关心的方法,从而减轻工作量。
? 在事件处理代码中区分事件源
在事件处理代码中可通过相应的方法得到事件源对象或与事件源相关的信息,见表3,通过这些信息可区分事件源。
表3 在事件处理代码中区分事件源 事件类型 ActionEvent WindowEvent ItemEvent KeyEvent 5、读写文件
方法 getSource() getActionCommand() getWindow() getItemSelectable() getKeyChar() getKeyCode() 作用 返回事件对象对应的事件源对象 返回动作命令字符串 返回窗体事件对应的窗体对象 返回选择事件对应的事件源对象 返回键盘事件按键对应的字符 返回键盘事件所按键的编码值 ItemListener itemStateChanged(ItemEvent) 接口名称 ActionListener 方法(事件) actionPerformed(ActionEvent)
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库java实验1-8(5)在线全文阅读。
相关推荐: