2015秋-《面向对象程序设计》-实验指导书(2)
实验三:图形用户界面设计
3.1实验性质
验证性实验(4学时)
3.2实验目的
Swing是Java基础类库 (JFC)的组成部分,它实现一组新的GUI组件,具有可插接的外观感觉效果。Swing是以100%纯Java实现的,且以JDK1.1 Lightweight UI框架为基础。可插接的外观感觉效果使您只需要设计一个GUI组件集,就可以自动得到与任意OS平台相吻合的外观感觉效果。Swing 组件包含两个已有AWT组件集的100%纯Java版本,外加一个高级组件的全集。本实验的目的在于掌握 Java 的 GUI 设计技术,熟悉 AWT 和 Swing(重点)的应用技巧。
3.3实验任务
1) 2) 3) 4) 5) 6) 7) 8) 9) 10) 11)
回顾AWT的应用方法
体会格网布局方案及其应用
观察可视化组件的事件监听机制和处理方法 查看基本的Swing用法
体验JTable组件的运用机制 编写一个带有条目的列表框 创建一个菜单
制作一个图书证信息输入窗体和一个借用物品窗体 编写基本的事件处理,交换窗体背景色彩
利用合适的布局和Swing控件完成一个简单的数据计算任务 回答思考问题
3.4实验准备
将以下代码输入NetBeans中,若代码存在错误请进行修改,查看输出成果,并对各行语句进行解释,将解释内容和运行结果写入实验报告。 (1)AWT简单示例 import java.awt.*; public class AwtDemo extends Frame{ Label lblname,lblage,lbladdr; TextField txtname,txtage; TextArea txtaddr; AwtDemo (String s) { super(s); setLayout(new FlowLayout()); lblname=new Label(\姓名:\ lblage=new Label(\年龄:\ lbladdr=new Label(\地址\ txtname=new TextField(15); txtage=new TextField(15); txtaddr=new TextArea(\北京\\n海淀区\\n982号\ add(lblname); add(txtname); add(lblage); add(txtage); add(lbladdr); add(txtaddr); } public static void main(String[] arg) { guidemo obj=new guidemo(\正在测试组件\ obj.setSize(400,300); obj.show(); } } (2)网格布局示例 import java.awt.*; import javax.swing.*; public class GridLayoutDemo { public static void main(String args[]) { JFrame frame=new JFrame(\布局\ Container c=frame.getContentPane(); GridLayout g=new GridLayout(3,2,5,5); c.setLayout(g); c.add(new JButton(\ c.add(new JButton(\ c.add(new JButton(\ c.add(new JButton(\ c.add(new JButton(\ c.add(new JButton(\ frame.setSize(200,250); frame.setVisible(true); } } (3)简单事件示例 import java.awt.*; import java.awt.event.*; public class eventdemo extends Frame implements ActionListener{ TextField txtf; TextArea txta; eventdemo(String title) { super(title); setLayout(new FlowLayout()); txtf=new TextField(20); txta=new TextArea(6,20); add(txtf); add(txta); txtf.addActionListener(this); addWindowListener(new WindowAdapter() { public void windowClosing(WindowEvent e) { System.exit(0); } }); setSize(200,200); setVisible(true); } public void actionPerformed(ActionEvent e) { txta.setText(txtf.getText()); } public static void main(String[] arg) { eventdemo obj=new eventdemo(\事件示例\ } } (4)Swing示例 import java.awt.*; import java.awt.event.*; import javax.swing.*; import javax.swing.event.*; public class JListDemo implements ListSelectionListener { JList list = null; JLabel label = null; String[] s = { \美国\中国\英国\法国\意大利\澳洲\韩国\ public JListDemo() { JFrame f = new JFrame(\ Container contentPane = f.getContentPane(); contentPane.setLayout(new BorderLayout()); label = new JLabel(); list = new JList(s); list.setVisibleRowCount(5); // 设定列表方框的可见栏数 list.setBorder(BorderFactory .createTitledBorder(\您最喜欢到哪个国家玩呢?\ list.addListSelectionListener(this); contentPane.add(label, BorderLayout.NORTH); // 给列表方框添加滚动栏 contentPane.add(new JScrollPane(list), BorderLayout.CENTER); f.pack(); f.show(); f.addWindowListener(new WindowAdapter() { public void windowClosing(WindowEvent e) { System.exit(0); } }); } public void valueChanged(ListSelectionEvent e) { int tmp = 0; String stmp = \您目前选取:\ //利用JList类所提供的getSelectedIndices()方法可得到用户所选取的所有项目 int[] index = list.getSelectedIndices(); //index值,这些index值由一个int array返回. for (int i = 0; i < index.length; i++) { tmp = index[i]; stmp = stmp + s[tmp] + \ \ } label.setText(stmp);
实验四:输入输出系统
4.1实验性质
验证性实验(4学时)
4.2实验目的
Java I/O处理中,最常见的是对文件流的操作,java.io包中有关文件处理的类有:File、FileInputStream、FileOutputStream、RamdomAccessFile和FileDescriptor;接口有:FilenameFilter。这一系列基础类良好辅助了编程对文件的管理,实现了一般应用程序的输入输出。本实验的目的在于掌握 Java 如何对流进行操作,如何使用数如输出系统。
4.3实验任务
1) 2) 3) 4) 5) 6) 7)
观察标准输入输出过程 体会文件的读取与显示 查看文件的复制方法
查看文件相关处理函数和目录函数的应用方法 编写程序读取学生个人信息并记录到文件
编写程序列取特定位置文件夹下的文件的属性内容 回答思考问题
4.4实验准备
将以下代码输入NetBeans中,若代码存在错误请进行修改,查看输出成果,并对各行语句进行解释,将解释内容和运行结果写入实验报告。 (1)利用标准输入输出 import java.io.*; public class StandardIO { public static void main(String[] args) { //IO操作必须捕获IO异常。 try { //先使用System.in构造InputStreamReader,再构造BufferedReader。 BufferedReader stdin = new BufferedReader(new InputStreamReader(System.in)); //读取并输出字符串。 System.out.print(\ System.out.println(stdin.readLine()); //读取并输出整型数据。 System.out.print(\//将字符串解析为带符号的十进制整数。 int number1 = Integer.parseInt(stdin.readLine()); System.out.println(number1); //读取并输出double类型数据。 System.out.print(\//将字符串解析为带符号的double类型数据。 double number2 = Double.parseDouble(stdin.readLine()); System.out.println(number2); } catch (IOException e) { System.err.println(\ } } } (2)读取文件 import java.io.BufferedReader; import java.io.FileNotFoundException; import java.io.FileReader; import java.io.IOException; import java.io.InputStreamReader; public class CatFi …… 此处隐藏:4284字,全部文档内容请下载后查看。喜欢就下载吧 ……
相关推荐:
- [建筑文档]2018年公需课:专业技术人员创新能力与
- [建筑文档]2013年福建教师招考小学数学历年真题
- [建筑文档]高中信息技术课flash知识点总结 - 图文
- [建筑文档]电工实训 - 图文
- [建筑文档]最高院公告案例分析100篇(民商篇)
- [建筑文档]南开中学高2017级14-15学年(上)期末
- [建筑文档]五粮液集团战略分析
- [建筑文档]鲁教版(2012秋季版)九年级化学 酸碱
- [建筑文档]超星尔雅2017中国哲学概论自整理题库答
- [建筑文档]关于成为海口金盘饮料公司材料独家供货
- [建筑文档]LNG学习资料第一册 基础知识 - 图文
- [建筑文档]四年级品社下册《好大一个家》复习资料
- [建筑文档]现阶段领导权力腐败的特点及发展趋势
- [建筑文档]魏晋南北朝诗歌鉴赏—嵇康
- [建筑文档]坚持追求真爱是理智的行为 正方一辩稿
- [建筑文档]湘西州刑释解教人员帮教安置工作存在的
- [建筑文档]园林工程试题库及答案
- [建筑文档]计算机长期没有向WSUS报告状态
- [建筑文档]日语最新流行语
- [建筑文档]B62-016 景观进场交底专题会议
- 2018年中考语文课内外古诗词鉴赏专题复
- 高考试题研究心得体会
- C语言基础题及答案
- 电气控制及PLC习题及答案
- 都昌小学家长学校汇报材料
- GMAT作文模板正确使用方法
- 俄军办坦克大赛:中国99式有望与豹2A6
- 成本会计练习题
- 酒店餐饮业最流行的5S管理方法
- 2014-2015学年山东省菏泽市高二(下)
- 《黄鹤楼送孟浩然之广陵》教案、说课、
- 2013年结构化学自测题 有答案版
- 2011西安世界园艺博览会游览解说词(附
- 窗口文明单位示范单位创建活动总结
- 2018满分超星尔雅就业课后练习期末答案
- 韶山市城市总体规划-基础资料
- 苏教版第三单元知识点归纳
- 第4章 曲轴模态分析
- 加大查办案件力度的思考
- 武汉CPC导轨介绍