《31叶文辉实验报告4-实现图形界面中的功能》由会员分享,可在线阅读,更多相关《31叶文辉实验报告4-实现图形界面中的功能(16页珍藏版)》请在金锄头文库上搜索。
1、 实 验 报 告课程名称: Java 程序设计 实验项目: 实现图形界面中的功能 实验类型:综合性 设计性 验证性专业班别: 11 本计科 2 班 姓 名: 叶文辉 学 号: 411240231 实验课室: 厚 A207 指导教师: 叶 丽 珠 实验日期: 2013-5-29 广东商学院华商学院教务处 制 一、实验项目训练方案小组合作:是 否 小组成员: 实验目的:掌握事件类型和监听器接口;掌握 GUI 低级事件;掌握 GUI 高级事件;熟练掌握适配器和匿名类的使用。 实验场地及仪器、设备和材料系统环境:Win XP、JDK1.6、Eclipse 3.7硬件需求: 对于硬件方面的要求,建议配置
2、是 Pentium III 450 以上的 CPU 处理器, 30GB的自由硬盘空间。 实验内容1. 实现按钮事件在一些桌面应用程序中,当单击一个按钮时,会打开一个新的窗口或者听到一些声音等,请用本章的 Java 事件知识实现上述功能,在窗口的标题上加上学生自己的学号和姓名信息。实验步骤请参考 286P287 页2.实现资源管理器资源管理器非常有用,可以帮助快速的查找一些文件等,请用 Java 事件实现一个简单的资源管理器,资源管理器是树形结构,在窗口的标题上加上学生自己的学号和姓名信息。实验步骤请参考 288P290 页。3. 实现计算器计算器在现实生活中经常用到,请用创建一个 Window
3、s 计算机风格图形界面的计算器,并实现其相应的加、减、乘、除等功能,在窗口的标题上加上学生自己的学号和姓名信息。实验步骤请参考 290P292 页。二、实验总结与评价实验总结(包括实验数据分析、实验结果、实验过程中出现的问题及解决方法等):一、实验结果1. 实现按钮事件实验结果(1)源代码import javax.swing.*;import java.awt.*;import java.awt.event.*;public class MouseDemo extends JFrame implementsMouseListener,MouseMotionListenerint flag;in
4、t x=0;int y=0;int startx,starty,endx,endy;public MouseDemo()Container contentPane=getContentPane();JPanel j=new JPanel();contentPane.addMouseListener(this);contentPane.addMouseMotionListener(this);setSize(300,300);setVisible(true);setTitle(31叶文辉);contentPane.add(j);addWindowListener(new WindowAdapte
5、r()public void windowClosing(WindowEvent e)System.exit(0););public void mousePressed(MouseEvent e)startx=e.getX();starty=e.getY();public void mouseReleased(MouseEvent e)endx=e.getX();endy=e.getY();public void mouseEntered(MouseEvent e)public void mouseExited(MouseEvent e)public void mouseClicked(Mou
6、seEvent e)public void mouseMoved(MouseEvent e)flag=1;x=e.getX();y=e.getY();repaint();public void mouseDragged(MouseEvent e)flag=2;x=e.getX();y=e.getY();repaint();public void update(Graphics g)g.fillRect(0,0,getWidth(),getHeight();paint(g);public void paint(Graphics g)g.setColor(Color.blue);if (flag=
7、1)g.drawLine(startx,starty,endx,endy);if(flag=2)g.drawLine(startx,starty,x,y);public static void main(String args)new MouseDemo();(2)运行结果截图2. 实现资源管理器实验结果(1)源代码import javax.swing.*;import java.awt.*;import java.awt.event.*;import javax.swing.tree.*;import javax.swing.event.*;public class TreeDemo imp
8、lements TreeSelectionListenerJTree tree=null;JTextArea text=new JTextArea(20,20);public TreeDemo()JFrame f=new JFrame(31 叶文辉-资源管理器);Container contentPane=f.getContentPane();DefaultMutableTreeNode root=new DefaultMutableTreeNode(资源管理器);DefaultMutableTreeNode node1=new DefaultMutableTreeNode(我的文档);Def
9、aultMutableTreeNode node2=new DefaultMutableTreeNode(我的电脑);DefaultMutableTreeNode node3=new DefaultMutableTreeNode(收藏夹);DefaultMutableTreeNode node4=new DefaultMutableTreeNode(Readme);DefaultTreeModel treeModel=new DefaultTreeModel(root);treeModel.insertNodeInto(node1,root,root.getChildCount();treeM
10、odel.insertNodeInto(node2,root,root.getChildCount();treeModel.insertNodeInto(node3,root,root.getChildCount();treeModel.insertNodeInto(node4,root,root.getChildCount();DefaultMutableTreeNode leafnode=new DefaultMutableTreeNode(图片收藏);treeModel.insertNodeInto(leafnode,node1,node1.getChildCount();leafnod
11、e=new DefaultMutableTreeNode(我的视频);treeModel.insertNodeInto(leafnode,node1,node1.getChildCount();leafnode=new DefaultMutableTreeNode(我的音乐);treeModel.insertNodeInto(leafnode,node1,node1.getChildCount();leafnode=new DefaultMutableTreeNode(本机磁盘(C:);treeModel.insertNodeInto(leafnode,node2,node2.getChild
12、Count();leafnode=new DefaultMutableTreeNode(本机磁盘(D:);treeModel.insertNodeInto(leafnode,node2,node2.getChildCount();leafnode=new DefaultMutableTreeNode(本机磁盘(E:);treeModel.insertNodeInto(leafnode,node2,node2.getChildCount();DefaultMutableTreeNode node31=new DefaultMutableTreeNode(网站列表);treeModel.inser
13、tNodeInto(node31,node3,node3.getChildCount();leafnode=new DefaultMutableTreeNode(奇摩站);treeModel.insertNodeInto(leafnode,node3,node3.getChildCount();leafnode=new DefaultMutableTreeNode(新浪站);treeModel.insertNodeInto(leafnode,node3,node3.getChildCount();tree=new JTree(treeModel);DefaultTreeCellRenderer
14、 render=new DefaultTreeCellRenderer();render.setFont(new Font(宋体,Font.BOLD,16);tree.setCellRenderer(render);JScrollPane scrollpane=new JScrollPane(text);JSplitPane splitpane=new JSplitPane(JSplitPane.HORIZONTAL_SPLIT,true,tree,scrollpane);tree.addTreeSelectionListener(this);contentPane.add(splitpane
15、);f.pack();f.setVisible(true);f.addWindowListener(new WindowAdapter()public void windowClosing(WindowEvent e)System.exit(0););public void valueChanged(TreeSelectionEvent e)if(e.getSource()=tree)DefaultMutableTreeNode node=(DefaultMutableTreeNode)tree.getLastSelectedPathComponent();if(node.isLeaf()String str=node.toString();if(str.equals(图片收藏)text.setText(str+n 此处存了大量的图片);if(str.equals(我的视频)text.setText(str+n 视频收藏);if(str.equals(我的音乐)text.setText(str+n 音乐收藏);if(str.equals(本机磁盘(C:)text.setTe