JAVA SWING图形界面程序设计实验报告(附完整代码)
图形界面程序设计课题内容和要求
内容:设计和编写一个用于将人民币转换为等值的美元的程序,界面要求可以输入人民币的金额并可以得到转换后的结果。要求:学习和理解JAVA SWING中的容器,部件,布局管理器和部件事件处理方法。通过编写和调试程序,掌握JAVA图形界面程序设计的基本方法。
二、设计思路分析
class RMBtoDollarclass change:设置界面,并通过界面上的事件触发实现汇率转换。
三、概要设计
RMBtoDollar{
public static void main(String[] args);
}
class change extends JFrame implements MouseListener {
JLabel l1, l2,l3;
JTextField tf1, tf2;
JButton b;
double RMB, Dollar;
public change();
public void mousePressed(MouseEvent e);
public void mouseClicked(MouseEvent e);
public void mouseEntered(MouseEvent e);
public void mouseExited(MouseEvent e);
public void mouseReleaseed(MouseEvent e);//鼠标释放时进行转换
}
四、详细设计
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class RMBtoDollar {
public static void main(String[] 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:");
l3=new JLabel("(汇率:6.17)");
tf1 = new JTextField(12);
tf2 = new JTextField(12);
b = new JButton("转换");
add(l1);
add(tf1);
add(l2);
add(tf2);
add(l3);
add(b);
setLayout(new FlowLayout(FlowLayout.CENTER));
setTitle("人民币转换为美元");
setBounds(300, 300, 300, 150);
setVisible(true);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
b.addMouseListener(this);//鼠标事件监视器
}
public void mousePressed(MouseEvent e) {
if (tf2.getText() != null) {// tf2 test 默认初始设为空
tf2.setText("");
}
}
public void mouseClicked(MouseEvent e) {
}
public void mouseEntered(MouseEvent e) {
}
public void mouseExited(MouseEvent e) {
}
public void mouseReleased(MouseEvent e) {
if (tf1.getText() != null) {// 检查tf1 test 是否为空
try {// 取异常
RMB = Double.parseDouble(tf1.getText());// 字符转为double型
Dollar = RMB / 6.17;//转换
tf2.setText("" + Dollar);// 显示
} catch (Exception ex) {
tf1.setText("");// 如果输入不是数字,设为空
}
}
}
}
五、测试数据及其结果分析
2输入字符串不能转为do