您的位置:首页 > 编程语言 > Java开发

汇率转换(java界面设计程序)

2016-06-01 21:59 711 查看
设计和编写一个用于将人民币转换为等值的美元的程序,界面要求可以输入人民币的金额并可以得到转换后的结果。
import java.awt.BorderLayout;import java.awt.Color;import java.awt.Container;import java.awt.Font;import java.awt.GridLayout;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.text.DecimalFormat;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JPanel;import javax.swing.JTextField;import javax.swing.WindowConstants;public class Frist extends JFrame{private JLabel j1;//汇率提示private JTextField hl;//汇率值,初始化的值是2016年5月31号的值,可自行设置private JLabel j2;//人民币提示private JTextField rmb;//人民币金额private JLabel j3;//美元提示private JLabel dl;//转换后的美元值private JButton quit;//退出按钮private JButton run;//计算按钮public Frist(){JFrame jf=new JFrame("汇率转换");Container container=jf.getContentPane();jf.setSize(500, 200);jf.setResizable(false);Font font=new Font("行书",Font.TRUETYPE_FONT,20);//字体jf.setLayout(new GridLayout(3,1,10,10));//3行1列的网格布局JPanel jp1=new JPanel(new  BorderLayout());//边界布局的第一个面板j1=new JLabel("汇率:");j1.setFont(font);//设置字体jp1.add(BorderLayout.WEST,j1);hl=new JTextField(getWidth()/3);hl.setText("6.5785");jp1.add(BorderLayout.CENTER,hl);container.add(jp1);//添加到容器中JPanel jp2=new JPanel(new GridLayout(1,4));//第二个面板,一行四列的网格布局j2=new JLabel("人民币:");j2.setFont(font);jp2.add(j2);rmb=new JTextField("");jp2.add(rmb);j3=new JLabel("美元:");j3.setFont(font);jp2.add(j3);dl=new JLabel("等价美元金额");dl.setFont(font);4000dl.setForeground(Color.BLUE);jp2.add(dl);container.add(jp2);JPanel jp3=new JPanel();quit=new JButton("退出");quit.addActionListener(new listener());//添加监听器jp3.add(quit);run=new JButton("计算");run.addActionListener(new listener());//添加监听器jp3.add(run);container.add(jp3);jf.setVisible(true);jf.setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);}class listener implements ActionListener{@Overridepublic void actionPerformed(ActionEvent e) {// TODO Auto-generated method stubswitch(e.getActionCommand().toString()){case "退出":System.exit(0);//退出按钮break;case "计算"://计算按钮boolean result=rmb.getText().matches("(([0-9]+)([.]([0-9]+))?|([.]([0-9]+))?)");//判断人民币金额是否输入的全是数字if(result){//全部是数字,进行计算double hv=Double.parseDouble(hl.getText().toString());double r=Double.parseDouble(rmb.getText().toString());DecimalFormat    df   = new DecimalFormat("0.00");   //格式化dl.setText(df.format(r/hv)+"");}else{dl.setText("含有非法字符");//含有其他字符,提示错误}break;}}}public static void main(String[] args) {// TODO Auto-generated method stubnew Frist();//创建对象}}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  java