-2

このプログラムは、ユーザーが入力したマイルを変換し、GUI インターフェイスを使用してキロメートルに変換することになっています。プログラムは現在コンパイルされていません。

aaaaa.java:10: エラー: メソッド宣言が無効です。戻り型必須 public CalcPanel() { ^ 1 エラー

このタイプのプログラムの例を探しても、そのメソッドの戻り値の型はありません。何か案は?ありがとう

プログラムは次のとおりです。

import javax.swing.*;
import java.awt.*;
import java.awt.event.*;

public class aaaaa extends JFrame {
private JLabel messageLabel= new JLabel("Enter distance in miles");
private JTextField milesTextField = new JTextField(10);;
private JButton calcButton = new JButton("Calculate"); 

public CalcPanel() {
    JPanel panel = new JPanel();
    panel.add(messageLabel);
    panel.add(milesTextField);
    panel.add(calcButton);

    calcButton.addActionListener(new CalcButtonListener());
}

public static void main(String[] args) {
        JFrame frame = new CalcPanel();
        frame.setTitle("M to Km Converter");
        frame.setLocationRelativeTo(null);
        frame.setSize(300, 200);
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        setVisible(true);
}

class CalcButtonListener implements ActionListener {        public void actionPerformed(ActionEvent e) {
        String input = milesTextField.getText();
        double kilometers = Double.parseDouble(input) * 1.6023;
        JOptionPane.showMessageDialog(null, input + " miles is " + kilometers + " kilometers.");
    }
}
}

その問題は解決しましたが、ここに別の問題があります。パネルが開きますが、私の messageLabel milesTextField calcButton は表示されません。

    import javax.swing.*;
    import java.awt.*;
    import java.awt.event.*;

    public class Aaaa extends JFrame {
    private JPanel panel;
    private JLabel messageLabel= new JLabel("Enter distance in miles");
    private JTextField milesTextField = new JTextField(10);;
    private JButton calcButton = new JButton("Calculate"); 

    public Aaaa() {
        JPanel panel = new JPanel();
        panel.add(messageLabel);
        panel.add(milesTextField);
        panel.add(calcButton);
        setVisible(true);
        calcButton.addActionListener(new CalcButtonListener());
    }

    public static void main(String[] args) {
            JFrame frame = new Aaaa();
            frame.setTitle("M to Km Converter");
            frame.setLocationRelativeTo(null);
            frame.setSize(300, 150);
    }

    class CalcButtonListener implements ActionListener {        public void actionPerformed(ActionEvent e) {
            String input = milesTextField.getText();
            double kilometers = Double.parseDouble(input) * 1.6023;
            JOptionPane.showMessageDialog(null, input + " miles is " + kilometers + " kilometers.");
        }
    }
}
4

2 に答える 2

1

タイプミスのようです。クラス名とコンストラクタ名が一致していません。クラス名は aaaaa で、コンストラクター名は CalcPanel です。

于 2013-06-26T00:52:06.293 に答える