所以我的任务如下:
Write a Java applet to add two numbers from text fields, and displays the result in a
non-editable text field. Enable your applet to run standalone with a main method. A
sample run of the applet is shown in the following figure.
我设法制作了在 Eclipse 中运行的小程序本身,但是当我将它导出为 JAR 时,当我尝试运行它时没有任何反应。我已经在我的教科书中重新阅读了(简要)部分几次,并且在最后一个小时左右都在谷歌上。所以我在这里,征求意见。
我的代码:
package NumberTwo;
import javax.swing.JApplet;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JTextField;
import java.awt.BorderLayout;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
public class AddNumbers extends JApplet {
/**
*
*/
private static final long serialVersionUID = 1L;
private JTextField textFieldOne;
private JTextField textFieldTwo;
private JTextField textFieldResult;
private int numberOne, numberTwo;
public static void main(String[] args) {
JFrame frame = new JFrame("Applet is in the frame");
AddNumbers applet = new AddNumbers();
applet.init();
applet.start();
frame.add(applet, BorderLayout.CENTER);
frame.setSize(300, 300);
frame.setLocationRelativeTo(null);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}
/**
* Create the applet.
*/
public AddNumbers() {
getContentPane().setLayout(null);
// Labels
JLabel labelOne = new JLabel("Number 1");
labelOne.setBounds(30, 35, 56, 16);
getContentPane().add(labelOne);
JLabel labelTwo = new JLabel("Number 2");
labelTwo.setBounds(130, 35, 56, 16);
getContentPane().add(labelTwo);
JLabel labelResult = new JLabel("Result");
labelResult.setBounds(230, 35, 56, 16);
getContentPane().add(labelResult);
JLabel labelAdd = new JLabel("Add");
labelAdd.addMouseListener(new MouseAdapter() {
@Override
public void mouseClicked(MouseEvent arg0) {
Addition();
}
});
labelAdd.setBounds(164, 62, 56, 16);
getContentPane().add(labelAdd);
// Text Fields
textFieldOne = new JTextField();
textFieldOne.setBounds(90, 32, 30, 22);
getContentPane().add(textFieldOne);
textFieldOne.setColumns(10);
textFieldTwo = new JTextField();
textFieldTwo.setColumns(10);
textFieldTwo.setBounds(190, 32, 30, 22);
getContentPane().add(textFieldTwo);
textFieldResult = new JTextField();
textFieldResult.setEditable(false);
textFieldResult.setColumns(10);
textFieldResult.setBounds(272, 32, 30, 22);
getContentPane().add(textFieldResult);
}
public void Addition() {
numberOne = Integer.parseInt(textFieldOne.getText());
numberTwo = Integer.parseInt(textFieldTwo.getText());
textFieldResult.setText(String.valueOf(numberOne + numberTwo));
}
}
任何见解将不胜感激。