私はGUI Javaプログラムを作成する方法を学びました。私はプロセスを学ぶために本を守ってきましたが、手紙で本をコピーしていても(私の知る限り)、私はいくつかの問題に取り組んできました。ここで私のフルコードを開始します。私のJavaプログラムから多くのエラーを受け取りました
package healthprofilegui;
//packages to be imported for the GUI
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JTextField;
public class HealthProfileGUI extends JFrame implements ActionListener {
// text field variables used to get user input.
JTextField txtName = new JTextField(15);
JTextField txtAge = new JTextField(15);
JTextField txtWeight = new JTextField(15);
JTextField txtHeight_feet = new JTextField(15);
JTextField txtHeight_inches = new JTextField(15);
//text field variables used to display calculations.
JTextField txtBMI = new JTextField(15);
JTextField txtCategory = new JTextField(15);
JTextField txtMaxHeartRate = new JTextField(15);
//buttons to be used for the program.
JButton btnDisplay = new JButton("Display");
JButton btnClear = new JButton("Clear");
Integer heightTotal = null;
private HealthProfile myProfile;
public profileGUI()
{
super("HealthProfile");
myProfile = new HealthProfile();
setLayout(new GridLayout(0,2));
//adds the text field labels to the program.
add(new JLabel("txtName"));
add(txtName);
add(new JLabel("txtAge"));
add(txtAge);
add(new JLabel("txtWeight"));
add(txtWeight);
add(new JLabel("txtHeight_feet"));
add(txtHeight_feet);
add(new JLabel("txtHeight_inches"));
add(txtHeight_inches);
//adds the buttons to the program.
add(btnDisplay);
add(btnClear);
//adds labels for the output fields
add(new JLabel("txtBMI"));
add(txtBMI);
add(new JLabel("txtCategory"));
add(txtCategory);
add(new JLabel("txtMaxHeartRate"));
add(txtMaxHeartRate);
setVisible(true);
btnDisplay.addActionListener(this);
btnClear.addActionListener(this);
}
@Override
public void action(ActionEvent e)
{
//clear text if the button is pressed.
if(e.getSource() == btnClear)
{
System.out.println("Clear Pressed");
txtName.setText("");
txtAge.setText("");
txtWeight.setText("");
txtHeight_feet.setText("");
txtHeight_inches.setText("");
txtBMI.setText("");
txtCategory.setText("");
txtMaxHeartRate.setText("");
}
//process data if pressed.
if(e.getSource() == btnDisplay)
{
//checks for missing input
if (txtName.getText().isEmpty() || txtAge.getText().isEmpty() || txtWeight.getText().isEmpty() || txtHeight_feet.getText().isEmpty() ||
txtHeight_inches.getText().isEmpty())
{
JOptionPane.showMessageDialog(null, "Please provide all input.");
return;
}
myProfile.setName(txtName.getText());
try
{
myProfile.setAge(Integer.parseInt(txtAge.getText()));
myProfile.setWeight(Integer.parseInt(txtWeight.getText()));
}
catch (NumberFormatException ex)
{
JOptionPane.showMessageDialog(null, "Please enter a numeric value");
return;
}
}
}
public static void main(String[] args) {
}
}
私は
public class HealthProfileGUI extends JFrame implements ActionListener
がHealthProfileGUI
あるクラスに受けています最初のエラーは、抽象的ではなく、ActionListener
に抽象メソッドactionPerformed(ActionEvent)
を上書きしません。
このエラーが表示される理由は完全にはわかりません。
二/第三は、GUI
public profileGUI()
のレイアウトを設定するために私が使用しようとしている方法のためである私にエラー
invalid method declaration; return type required
を与えている私は考えていますなぜこれが命令として出現したとしても、その中に「リターン」を使用したことはありません。
は私も
super("HealthProfile");
のために、「コンストラクタの最初のステートメントでなければなりませんスーパーに呼んで」このエラーを取得しています、私は「可能な限り、このエラーにできるだけ多くの情報を見つけることを試みたが、couldnています私の問題を同様の程度に複製したものは全く見つかりません。
私は問題を抱えている一番最後は
@Override
public void action(ActionEvent e)
方法は、スーパータイプ
からメソッドをオーバーライドまたは実装していない私はあまりがあることは申し訳ないですが、私は次のように保持私がすべてのコードを配置し終えた後、エラーが自分自身を並べ替えるという前提に基づいてできる限り最善の方法を説明します。しかしそれほど大したことではありません。
私は大いに助けていただきありがとうございます。特にこれは私のために非常に少数であったので。
HealthProfileクラスがありません。 – blackpen
JavaScriptは* Java *ではない* Java –
私はJavaScriptについて何も言わなかった。私はJavaスクリプトを言った。これは2つの別々の単語です。しかし、それが言葉にされる方法は、分かりやすく混乱させることができます。 –