Witam mam mały problem z ponizszym kodem :( Jako ze w jestem poczatkujacy z Javą mam mala prosbe .. w ponizszym kodzie przy kompilacji wyskakuje mi błąd ktory jest zwiazany z miejsacami w ktorych sa wykrzykniki. Chodzi mi o dodanie 3 przyciskow do panela... Eclipse mowi ze nie moze zajsc taka konwersja i doradza rzutowanie Przyciskow na obiekt JPanel lub zmiane typu buttonPanel na obiekt klasy Contener, moglby mi ktos podpowiedziec dlaczego tak sie dzieje... i jak to rozwiazac
import java.awt.;
import java.awt.event.;
import javax.swing.*;
public class buttonTest
{
public static void main (String[] args)
{
EventQueue.invokeLater(new Runnable()
{
public void run()
{
ButtonFrame frame = new ButtonFrame();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}
});
}
}
class ButtonFrame extends JFrame
{
public ButtonFrame()
{
setTitle("test button");
setSize(x,y);
JButton yellowButton = new JButton("zolty");
JButton blueButton = new JButton("niebieski");
JButton redButton = new JButton("czerwony");
buttonPanel = new JPanel();
buttonPanel= add(yellowButton); //!!!!!!!!!!!!!!!!!!!!!!!!!
buttonPanel= add(blueButton); // !!!!!!!!!!!!!!!!!!!!!!!!
buttonPanel= add(redButton); //!!!!!!!!!!!!!!!!!!!!!!!!
add(buttonPanel);
ColorAction yellowAction = new ColorAction(Color.YELLOW);
ColorAction blueAction = new ColorAction(Color.BLUE);
ColorAction redAction = new ColorAction(Color.RED);
yellowButton.addActionListener(yellowAction);
blueButton.addActionListener(blueAction);
redButton.addActionListener(redAction);
}
private class ColorAction implements ActionListener
{
public ColorAction (Color c)
{
backgroundColor = c;
}
public void actionPerformed(ActionEvent event)
{
buttonPanel.setBackground(backgroundColor);
}
private Color backgroundColor;
}
private JPanel buttonPanel; //!!!!!!!!!!!!!!!!!!!!!!!1
public static final int x=300;
public static final int y=400;
}