JAVASWING图形界面程序设计实验报告(附完整代码).doc

图形界面(GUI)程序设计一、 课题内容和要求内容设计和编写一个用于将人民币转换为等值的美元的程序,界面要求可以输入人民币的金额并可以得到转换后的结果。要求学习和理解JAVA SWING中的容器,部件,布局管理器和部件事件处理方法。通过编写和调试程序,掌握JAVA图形界面程序设计的基本方法。二、设计思路分析class RMBtoDollar主类,调用主函数。class change设置界面,并通过界面上的事件触发实现汇率转换。三、概要设计 public class RMBtoDollarpublic static void mainString args;class change extends JFrame implements MouseListener JLabel l1, l2,l3;JTextField tf1, tf2;JButton b;double RMB, Dollar;public change;public void mousePressedMouseEvent e;public void mouseClickedMouseEvent e;public void mouseEnteredMouseEvent e;public void mouseExitedMouseEvent e;public void mouseReleaseedMouseEvent e;鼠标释放时进行转换四、详细设计 import java.awt.*;import java.awt.event.*;import javax.swing.*;public class RMBtoDollar public static void mainString args new change;class change extends JFrame implements MouseListener JLabel l1, l2,l3;JTextField tf1, tf2;JButton b;double RMB, Dollar;public change 添加组件和设置布局l1 new JLabel人民币/元 ;l2 new JLabel美元/dollar;l3new JLabel(汇率6.17);tf1 new JTextField12;tf2 new JTextField12;b new JButton转换;addl1;addtf1;addl2;addtf2;addl3;addb;setLayoutnew FlowLayoutFlowLayout.CENTER;setTitle人民币转换为美元;setBounds300, 300, 300, 150;setVisibletrue;setDefaultCloseOperationJFrame.EXIT_ON_CLOSE;b.addMouseListenerthis;鼠标事件监视器public void mousePressedMouseEvent e if tf2.getText null tf2 test 默认初始设为空tf2.setText;public void mouseClickedMouseEvent e public void mouseEnteredMouseEvent e public void mouseExitedMouseEvent e public void mouseReleasedMouseEvent e if tf1.getText null 检查tf1 test 是否为空try 取异常RMB Double.parseDoubletf1.getText; 字符转为double型Dollar RMB / 6.17;转换tf2.setText Dollar; 显示 catch Exception ex tf1.setText; 如果输入不是数字,设为空五、测试数据及其结果分析1正常输入2输入字符串不能转为double型时清空输入框3结果输出正常。六、调试过程中的问题 一开始没有对输入流输入的字符串转为double型数据,导致不能转换,采用转为double型并抛出异常后解决了该问题。七、程序设计总结1、通过该实验掌握了JAVA图形界面程序设计的方法。2、熟悉了JAVASWING中的容器、组件、布局以及事件监视器和事件接口的使用。3、在逐步地优化和调试中实现了一个较实用的界面。