Consegui um código com buttons e componentes de desenho:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
//import java.awt.geom.*;
public class CustomPanelTest extends JFrame {
private JPanel buttonPanel;
private CustomPanelTest myPanel;
private JButton circle,square;
public CustomPanelTest() {
super ("CustomPanel Test");
myPanel = new CustomPanelTest();
myPanel.setBackground(Color.green);
square = new JButton("Square");
square.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
myPanel.draw(CustomPanel.SQUARE);
}
});
circle = new JButton("Circle");
circle.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
myPanel.draw(CustomPanel.CIRCLE);
}
});
buttonPanel = new JPanel();
buttonPanel.setLayout(new GridLayout(1,2));
buttonPanel.add(circle);
buttonPanel.add(square);
Container c = getContentPane();
c.add(myPanel,BorderLayout.CENTER);
c.add(buttonPanel,BorderLayout.SOUTH);
setSize(300,150);
show();
}
public static void main(String args[]) {
CustomPanelTest app = new CustomPanelTest();
app.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
System.exit(0);
}
});
}
}
Só que ele está me dando erro nas linhas:
myPanel.draw(CustomPanel.CIRCLE);
myPanel.draw(CustomPanel.SQUARE);
O erro é o seguinte: CustomPanel cannot be resolved. Tentei também:
myPanel.draw(CustomPanelTest.CIRCLE);
myPanel.draw(CustomPanelTest.SQUARE);
Isso me dá o mesmo erro.
Retirei esse exemplo do livro do Deitel (capa verde das formigas).
Alguém pode dar um help?
Agradeço.
