嗨,我还是一个学习Java的学生。我应该做这个计算器,但我有一个错误,我不知道如何修复它。
以下是我的代码:
**import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;
import javax.swing.JButton;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JTextField;
public class Task1 extends JPanel implements ActionListener
{
JLabel label1,label2;
JTextField textField1,textField2;
JButton button1,button2,button3,button4,button5,button6;
double addResult=0;
double subResult=0;
double mulResult=0;
double divResult=0;
public void Task1()
{
setLayout(new GridLayout(5,2,5,5));
label1=new JLabel("First Value: ");
add(label1);
textField1=new JTextField(10);
add(textField1);
label2=new JLabel("Second Value");
add(label2);
textField2=new JTextField(10);
add(textField2);
button1=new JButton("ADD");
add(button1);
button1.setMnemonic(KeyEvent.VK_A);
button1.addActionListener(this);
button2=new JButton("SUBSTRACT");
add(button2);
button2.addActionListener(this);
button3=new JButton("MULTIPLY");
add(button3);
button3.addActionListener(this);
button4=new JButton("DIVIDE");
add(button4);
button4.addActionListener(this);
button5=new JButton("COMPUTE");
add(button5);
button5.addActionListener(this);
button6=new JButton("RESET");
add(button6);
button6.addActionListener(this);
}
@Override
public void actionPerformed(ActionEvent evt)
{
try{
if(evt.getSource()==button1)
{
String text=textField1.getText();
String text2=textField2.getText();
if(text.equals("")||text2.equals(""))
{
JOptionPane.showMessageDialog(null,"Please Enter Values");
}
addResult=addResult+Integer.parseInt(text)+Integer.parseInt(text2);
}
if(evt.getSource()==button2)
{
String text=textField1.getText();
String text2=textField2.getText();
if(text.equals("")||text2.equals(""))
{
JOptionPane.showMessageDialog(null,"Please Enter Values");
}
subResult=subResult+(Integer.parseInt(text)-Integer.parseInt(text2));
}
if(evt.getSource()==button3)
{
String text=textField1.getText();
String text2=textField2.getText();
if(text.equals("")||text2.equals(""))
{
JOptionPane.showMessageDialog(null,"Please Enter Values");
}
mulResult=mulResult+(Integer.parseInt(text)*Integer.parseInt(text2));
}
if(evt.getSource()==button4)
{
String text=textField1.getText();
String text2=textField2.getText();
if(text.equals("")||text2.equals(""))
{
JOptionPane.showMessageDialog(null,"Please Enter Values");
}
divResult=divResult+(Integer.parseInt(text)/Integer.parseInt(text2));
}
if(evt.getSource()==button5)
{
JOptionPane.showMessageDialog(null,"Result: "+
(addResult+subResult+mulResult+divResult));
}
if(evt.getSource()==button6)
{
textField1.setText("");
textField2.setText("");
}
}
catch(Exception e)
{
JOptionPane.showMessageDialog(null,"Exception: "+e.getMessage());
}
}
}**下面是错误:
错误:在类Task1中找不到Main方法,请将main方法定义为: public static void main(String[] args)或JavaFX应用程序类必须扩展javafx.application.Application codio@border florida:~/workspace/swing$
发布于 2021-07-16 15:18:09
正如错误文本中所述,您需要指定一个main方法。main方法是所有java应用程序的起点。你应该从学校得到一些材料,那里解释了这一点。在那里搜索名为main的方法,或者在Oracle basic Java tutorials中查找它。
此外,您还需要做更多的工作才能真正看到这个名为Task1的JPanel,但是您的学校材料或其他回复链接的基本swing教程解释了这些事情。
发布于 2021-07-16 04:34:17
首先,你应该把你的类放在一个包里。其次,必须覆盖方法start,如下所示:
@Override
public void start(Stage primaryStage) {
//put your starting code here
}https://stackoverflow.com/questions/68400255
复制相似问题