Ошибка с окном JFrame при нажатии кнопки - Java
Формулировка задачи:
Доброго времени суток. Подскажите пожалуйста, в чем у меня ошибка. При нажатии на кнопку должна в окне показываться другая информация, но когда я её нажимаю - ничего не происходит, но как только я начинаю менять размеры открытого окна(растягивать или стягивать) - информация начинает отображаться нужная.
Ниже представлен код программы(метод main в другом классе) :
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.JPanel; public class Window extends JFrame{ JPanel panel = new JPanel(); JPanel paneld = new JPanel(); Window(){ super("Historical test"); setDefaultCloseOperation(EXIT_ON_CLOSE); //JPanel panel = new JPanel(); panel.setLayout(new GridLayout(2,3,5,10)); JButton egypt = new JButton("История Египта"); JButton greece = new JButton("История Греции"); JButton rome = new JButton("История Рима"); JButton china = new JButton("История Китая"); panel.add(egypt); panel.add(greece); panel.add(rome); panel.add(china); setContentPane(panel); setSize(400, 300); MyAction myAction = new MyAction(); egypt.addActionListener(myAction); paneld.setLayout(new GridLayout(2,3,5,10)); JButton greec = new JButton("История Греции"); JButton rom = new JButton("История Рима"); JButton chin = new JButton("История Китая"); paneld.add(greec); paneld.add(rom); paneld.add(chin); } class MyAction implements ActionListener{ public void actionPerformed(ActionEvent e) { setContentPane(paneld); } } }
Решение задачи: «Ошибка с окном JFrame при нажатии кнопки»
textual
Листинг программы
public void actionPerformed(ActionEvent e) { setContentPane(paneld); }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д