1

我的代码大部分都完成了,但我很难弄清楚最后一点,以便它完成。

这是我正在尝试做的事情:

我正在尝试制作一个小程序,它通过 JOptionPanes 从用户那里获取两个浮点数,并给出这两个数字的总和以及矩形内总和的绝对值。

就像我说的,我已经完成了代码,我只是挂断了一部分。我不知道如何让用户输入到窗格中,因为我已将窗格放入 init 方法中,而用于输出的矩形和字符串位于 paint 方法中。

我尝试让窗格和矩形都在绘制方法中,但这导致窗格在给出输出之前提示用户两次,我不希望这样。这就是我将窗格放在 init 方法中的原因。

有没有什么办法可以调用init方法中的信息,放到paint方法中呢?

谁能帮我吗?

这是我为这个小程序制作的代码:

import javax.swing.JApplet;
import javax.swing.JOptionPane;
import java.text.DecimalFormat;
import java.awt.*;

public class MathApplet extends JApplet
{
    public void init()
    {

        DecimalFormat fmt = new DecimalFormat ("0.##");
        DecimalFormat fmt2 = new DecimalFormat ("0.###");

        String intro, givenum1, givenum2;
        float num1, num2, sum, absum;

        intro = "Enter two floating point numbers, and their sum and the absolute 
                    value of the sum will be calculated.";

        JOptionPane.showMessageDialog(null, intro);

        givenum1 = JOptionPane.showInputDialog(null, "Enter the 1st floating point 
                                                       number now." );

        num1 = Float.parseFloat(givenum1);

        givenum2 = JOptionPane.showInputDialog(null, "Enter the second floating point 
                                                       number now.");

        num2 = Float.parseFloat(givenum2);

        sum = num1+num2;

        absum = Math.abs(sum);
   }

   public void paint (Graphics page)
   { 
        page.drawRect (60, 80, 300, 140);
        page.drawString("The absolute value of the numbers is.", 100, 100);
        page.drawString ("The sum of the numbers is.", 100, 120);



    }

}
4

0 回答 0