📜  使用 AWT 转换货币的Java程序

📅  最后修改于: 2022-05-13 01:54:56.264000             🧑  作者: Mango

使用 AWT 转换货币的Java程序

SwingJFC(Java基础类)的一部分。在Java中构建图形用户界面需要使用 Swings。 Swing 框架包含大量组件,这些组件允许高级定制并提供丰富的功能,用于创建基于窗口的应用程序。 Java Swing 组件是轻量级的,独立于平台的,提供强大的组件,如表格、滚动面板、按钮、列表、颜色选择器等。

在本文中,我们将了解如何制作一个货币转换器,其中包括 INR 和美元之间的转换。使用卢比和美元标签实现了两个文本字段。

注:假设 1 美元等于 65.25 卢比。

例子:

方法:为了解决这个问题,遵循以下步骤:

  1. 首先,我们需要使用 JFrame 创建一个框架。
  2. 然后,使用 JLabel、JTextField 和 JButton 创建两个标签、两个文本字段和三个按钮(第一个按钮是卢比,第二个按钮是美元)。
  3. 相应地命名这些组件并设置它们的界限。
  4. 现在,为了在按钮单击时执行转换,我们需要添加事件处理程序。在这种情况下,我们将添加 ActionListener 来执行称为 actionPerformed 的操作方法,首先我们需要从默认为“字符串”的文本字段中获取值。
  5. 因此,为了执行数学运算,我们需要使用Double.parseDouble(Object.getText())将它们转换为双精度数据类型,并再次从双精度转换为字符串,以使用String.valueOf将最终值放在另一个文本字段中(对象)
  6. 最后,为了更改值,我们使用 Object.setText(object),第二个对象用于选择要替换的字段。

下面是上述方法的实现:

// Java program to convert from
// rupee to the dollar and vice-versa
// using Java Swing
  
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class GFG {
  
    // Function to convert from rupee
    // to the dollar and vice-versa
    // using Java Swing
    public static void converter()
    {
  
        // Creating a new frame using JFrame
        JFrame f = new JFrame("CONVERTER");
  
        // Creating two labels
        JLabel l1, l2;
  
        // Creating two text fields.
        // One for rupee and one for
        // the dollar
        JTextField t1, t2;
  
        // Creating three buttons
        JButton b1, b2, b3;
  
        // Naming the labels and setting
        // the bounds for the labels
        l1 = new JLabel("Rupees:");
        l1.setBounds(20, 40, 60, 30);
        l2 = new JLabel("Dollars:");
        l2.setBounds(170, 40, 60, 30);
  
        // Initializing the text fields with
        // 0 by default and setting the
        // bounds for the text fields
        t1 = new JTextField("0");
        t1.setBounds(80, 40, 50, 30);
        t2 = new JTextField("0");
        t2.setBounds(240, 40, 50, 30);
  
        // Creating a button for INR,
        // one button for the dollar
        // and one button to close
        // and setting the bounds
        b1 = new JButton("INR");
        b1.setBounds(50, 80, 60, 15);
        b2 = new JButton("Dollar");
        b2.setBounds(190, 80, 60, 15);
        b3 = new JButton("close");
        b3.setBounds(150, 150, 60, 30);
  
        // Adding action listener
        b1.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent e)
            {
                // Converting to double
                double d
                    = Double.parseDouble(t1.getText());
  
                // Converting rupees to dollars
                double d1 = (d / 65.25);
  
                // Getting the string value of the
                // calculated value
                String str1 = String.valueOf(d1);
  
                // Placing it in the text box
                t2.setText(str1);
            }
        });
  
        // Adding action listener
        b2.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent e)
            {
                // Converting to double
                double d2
                    = Double.parseDouble(t2.getText());
  
                // converting Dollars to rupees
                double d3 = (d2 * 65.25);
  
                // Getting the string value of the
                // calculated value
                String str2 = String.valueOf(d3);
  
                // Placing it in the text box
                t1.setText(str2);
            }
        });
  
        // Action listener to close the form
        b3.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent e)
            {
                f.dispose();
            }
        });
  
        // Default method for closing the frame
        f.addWindowListener(new WindowAdapter() {
            public void windowClosing(WindowEvent e)
            {
                System.exit(0);
            }
        });
  
        // Adding the created objects
        // to the form
        f.add(l1);
        f.add(t1);
        f.add(l2);
        f.add(t2);
        f.add(b1);
        f.add(b2);
        f.add(b3);
  
        f.setLayout(null);
        f.setSize(400, 300);
        f.setVisible(true);
    }
  
    // Driver code
    public static void main(String args[])
    {
        converter();
    }
}

输出:

  1. 运行程序时显示的窗口:

  2. 从 INR 转换为美元,即单击 INR 按钮时:

  3. 从美元转换为 INR,即当点击美元按钮时: