题目1: 综合图形界面程序设计

实验目的和要求:学习和理解JAVA SWING中的容器,部件,布局管理器和部件事件处理方法。通过编写和调试程序,掌握JAVA图形界面程序设计的基本方法。

实验内容:设计和编写一个用于将人民币转换为等值的美元的程序,界面要求可以输入人民币的金额并可以得到转换后的结果。

 

附:程序使用的人民币外汇牌价参考

100元美元等值买入人民币数:617.00 (参考数据)


代码:

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.math.*;
public class changemoney {
        public static void main(String args[]){
        	 ChangeBox win=new ChangeBox();
        }
}

public class ChangeBox extends JFrame{
       JTextField inputText,showText;
       ChangeBox(){
    	   inputText=new JTextField(11);//创建读入文本框
    	   showText=new JTextField(11);//创建输出文本框
    	   inputText.addActionListener(new ActionListener(){//监视器
    		   public void actionPerformed(ActionEvent e){
    			   String s=inputText.getText();//以字符串读入数字
    			   try{
    				   double n;
    				   n=Double.parseDouble(s);//将字符串转化为double类型
    				   n=n*100.0/617.0;
    				   showText.setText(String.valueOf(n));//将double类型转化为字符串并输出
    			   }
    			   catch(NumberFormatException ee){//输入异常处理
    				   showText.setText("请输入钱数!");
    				   inputText.setText(null);
    			   }
    		   }
    	   });
    	   Box box1,box2,basebox;
    	   box1=Box.createVerticalBox();
    	   box1.add(new JLabel("请输入要换的人民币数"));//添加标签
    	   box1.add(Box.createVerticalStrut(8));//设置两个控件的垂直距离
    	   box1.add(new JLabel("转化后的美元数"));
    	   box1.add(Box.createVerticalStrut(8));
    	   box2=Box.createVerticalBox();
    	   box2.add(inputText);//添加文本框
    	   box2.add(Box.createVerticalStrut(8));
    	   box2.add(showText);
    	   box2.add(Box.createVerticalStrut(8));
    	   basebox=Box.createHorizontalBox();
    	   basebox.add(box1);//嵌套box容器
    	   basebox.add(Box.createHorizontalStrut(10));//设置水平支撑
    	   basebox.add(box2);
    	   setLayout(new FlowLayout());//FlowLayout布局
    	   add(basebox);//添加BoxLayout布局
    	   setBounds(150,150,320,110);//设置窗口位置和大小
    	   setVisible(true);//设置是否可见
    	   validate();
    	   setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);//关闭窗口时退出程序
       }
}


Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐