Je n'arrive pas à comprendre où je me trompe, j'ai essayé de modifier quelques éléments mais je n'arrive pas à faire fonctionner correctement le "CalculateButtonHandler". Je suis désolé d'avoir mis tout ce code, mais la dernière fois, je n'ai pas été assez précis :S Si quelqu'un pouvait m'indiquer la bonne direction, ce serait formidable. Merci.
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
// some kind of problem with Calculate button handler (LINE 78
public class Program5 extends JFrame
{
// Setting up for the program
private JLabel side1, side2, side3, str, result;
private JButton calculate, endProgram;
private JTextField input1, input2, input3;
private CalculateButtonHandler calcHandler;
private EndProgramButtonHandler endHandler;
private Container pane;
private static final int WIDTH = 500;
private static final int HEIGHT = 350;
// constructor
public Program5()
{
// create labels
side1 = new JLabel ("Triangle's Longest Side: ", SwingConstants.CENTER);
side2 = new JLabel ("Triangle's Next Side: ", SwingConstants.CENTER);
side3 = new JLabel ("Triangle's Last Side: ", SwingConstants.CENTER);
result = new JLabel ("", SwingConstants.CENTER);
str = new JLabel ("Is the Triangle a right Triangle?",SwingConstants.CENTER);
// create text fields
input1 = new JTextField ("", 60);
input1.setHorizontalAlignment(JTextField.CENTER);
input2 = new JTextField ("", 60);
input2.setHorizontalAlignment(JTextField.CENTER);
input3 = new JTextField ("", 60);
input3.setHorizontalAlignment(JTextField.CENTER);
// create buttons
calculate = new JButton ("Calculate");
calcHandler = new CalculateButtonHandler ();
calculate.addActionListener(calcHandler);
endProgram = new JButton ("Exit");
endHandler = new EndProgramButtonHandler();
endProgram.addActionListener(endHandler);
// Set title of Window
setTitle ("Right Triangle Tester");
//Get Container
pane = getContentPane();
// set Layout
pane.setLayout (new GridLayout (5, 2));
// place the components in the pane
pane.add(side1);
pane.add(input1);
pane.add(side2);
pane.add(input2);
pane.add(side3);
pane.add(input3);
pane.add(str);
pane.add(result);
pane.add(calculate);
pane.add(endProgram);
// set size of the window and display it
setSize (WIDTH, HEIGHT);
setVisible (true);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
private class CalculateButtonHandler implements ActionListener
{
public void actionPerformed (ActionEvent e)
{
double num1, num2, num3;
num1 = Double.parseDouble(side1.getText());
num2 = Double.parseDouble(side2.getText());
num3 = Double.parseDouble(side3.getText());
if ((num1*num1) == ((num2*num2)+(num3*num3)))
{
result.setText("YES");
}
else
{
result.setText("NO");
}
}
}
private class EndProgramButtonHandler implements ActionListener
{
public void actionPerformed (ActionEvent e)
{
System.exit(0);
}
}
public static void main(String[] args)
{
Program5 myObject = new Program5();
}
}