【发布时间】:2015-01-09 19:08:55
【问题描述】:
大家好,我的名字是 Fyree!我有一个 Java 入门课程的作业,我需要创建一个程序,该程序接受用户输入的起始值和所有五年值来制作折线图(但这是另一篇文章),并打印费率。这是我的问题,当我尝试运行这个小程序时,它会打开(编译时没有错误),但只显示为空白屏幕,并在小程序底部显示小程序未初始化。我不确定为什么会这样(目前我正在尝试让作业的费率部分工作,它需要用户给出的第五年值和起始值,并使用它们打印出增长率或利息)。我想知道为什么会发生这种情况,以及我需要做什么才能在屏幕上正确显示速率输出(或者在我输入后在折线图下方)。任何帮助将不胜感激,因为这项作业明天到期!
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
public class Rate_Graph extends JApplet implements ActionListener
{
JLabel bv, ev1, ev2, ev3, ev4, ev5;
JTextField bv1, ev_1, ev_2, ev_3, ev_4, ev_5;
JButton go, add1, add2, add3, add4, add5;
public void init()
{
setLayout(new FlowLayout()); //This sets the preferred layout format
bv = new JLabel("Enter beginning value:"); //Beginning value input
bv1 = new JTextField(5);
ev1 = new JLabel("Enter year 1 value:"); //Year 1 value input
ev_1 = new JTextField(5);
ev2 = new JLabel("Enter year 2 value:"); //Year 2 value input
ev_2 = new JTextField(5);
ev3 = new JLabel("Enter year 3 value:"); //Year 3 value input
ev_3 = new JTextField(5);
ev4 = new JLabel("Enter year 4 value:"); //Year 4 value input
ev_4 = new JTextField(5);
ev5 = new JLabel("Enter year 5 value:"); //Year 5 value input
ev_5 = new JTextField(5);
go = new JButton("Add!"); //Button that implements all the values
go.addActionListener(this); //So it does something
add(bv); add(bv1); //Adding all of the different things
add(ev1); add(ev_1);
add(ev2); add(ev_2);
add(ev3); add(ev_3);
add(ev4); add(ev_4);
add(ev5); add(ev_5);
add(go);
}
public void actionPerformed(ActionEvent event)
{
/*Object src = event.getSource();
if(src==go){
String strbv = bv1.getText();
String strev1 = ev_1.getText();
String strev2 = ev_2.getText();
String strev3 = ev_3.getText();
String strev4 = ev_4.getText();
String strev5 = ev_5.getText();
}*/
}
int intbv = Integer.parseInt(bv1.getText());
int intev1 = Integer.parseInt(ev_1.getText());
int intev2 = Integer.parseInt(ev_2.getText());
int intev3 = Integer.parseInt(ev_3.getText());
int intev4 = Integer.parseInt(ev_4.getText());
int intev5 = Integer.parseInt(ev_5.getText());
public double computeRate()
{
double rate = (Math.pow(intev5 / intbv, 1.0 / 5.0) - 1);
return rate;
}
}
【问题讨论】:
-
您标记了 bluej。你用的是bluej,还是用java?您是否曾经出现过一个小程序并向您展示一个 UI,或者是您的第一次尝试?为什么要使用小程序?
-
我正在使用小程序,因为教授也需要我。此外,BlueJ 只是一个 IDE,可帮助您更轻松地使用 Java 进行编码。你知道为什么会这样吗?我也不确定为什么它被否决,因为它是一个有效的问题,并且标签是正确的。
-
不,bluej 并不是真正的 java。人们总是在这里问奇怪的问题,因为他们使用了一些奇怪的 bluej 功能,而我们 Java 程序员都无法理解他们在说什么。
-
我只是将其添加为标签,因为我想不出另一个。 BlueJ 不是一种不同的编程语言。无论如何,你能帮我吗?
标签: java methods applet jtextfield bluej