Ошибка с окном JFrame при нажатии кнопки - Java

Узнай цену своей работы

Формулировка задачи:

Доброго времени суток. Подскажите пожалуйста, в чем у меня ошибка. При нажатии на кнопку должна в окне показываться другая информация, но когда я её нажимаю - ничего не происходит, но как только я начинаю менять размеры открытого окна(растягивать или стягивать) - информация начинает отображаться нужная. Ниже представлен код программы(метод main в другом классе) :
Листинг программы
  1. import java.awt.GridLayout;
  2. import java.awt.event.ActionEvent;
  3. import java.awt.event.ActionListener;
  4. import javax.swing.JButton;
  5. import javax.swing.JFrame;
  6. import javax.swing.JPanel;
  7.  
  8. public class Window extends JFrame{
  9. JPanel panel = new JPanel();
  10. JPanel paneld = new JPanel();
  11.  
  12. Window(){
  13. super("Historical test");
  14. setDefaultCloseOperation(EXIT_ON_CLOSE);
  15. //JPanel panel = new JPanel();
  16. panel.setLayout(new GridLayout(2,3,5,10));
  17. JButton egypt = new JButton("История Египта");
  18. JButton greece = new JButton("История Греции");
  19. JButton rome = new JButton("История Рима");
  20. JButton china = new JButton("История Китая");
  21. panel.add(egypt);
  22. panel.add(greece);
  23. panel.add(rome);
  24. panel.add(china);
  25. setContentPane(panel);
  26. setSize(400, 300);
  27. MyAction myAction = new MyAction();
  28. egypt.addActionListener(myAction);
  29. paneld.setLayout(new GridLayout(2,3,5,10));
  30. JButton greec = new JButton("История Греции");
  31. JButton rom = new JButton("История Рима");
  32. JButton chin = new JButton("История Китая");
  33. paneld.add(greec);
  34. paneld.add(rom);
  35. paneld.add(chin);
  36. }
  37. class MyAction implements ActionListener{
  38. public void actionPerformed(ActionEvent e) {
  39. setContentPane(paneld);
  40. }
  41. }
  42. }

Решение задачи: «Ошибка с окном JFrame при нажатии кнопки»

textual
Листинг программы
  1. public void actionPerformed(ActionEvent e) {
  2.  
  3.             setContentPane(paneld);
  4. }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

11   голосов , оценка 3.727 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы