Я запрограммировал JFrame, который имеет Button и JList, и когда я нажимаю на Button, отображается список JList. Вместо этого он ничего не показывает, пока я не нажму на максимизацию или не обновлю кадр.
Класс слушателя кнопки
class b0listener implements ActionListener{
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
MessageList.removeAll();
Messages = new JList(lireRepertoire("C:/Documents and Settings/Java/eclipse data file"));
Pane =new JScrollPane(Messages);
Pane.setPreferredSize(new Dimension(400,400));
//Messages.setMaximumSize(MessageList.getPreferredSize()) ;
MessageList.add( Pane);
}}
код конструктора класса
Fframe.setTitle("Boite Message");
Fframe.setSize(800,300);
Fframe.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Fframe.setVisible(true);
// panels Layout
ButtonMenu.setLayout(new BoxLayout(ButtonMenu, BoxLayout.Y_AXIS));//Jpanel
MessageList.setLayout(new FlowLayout());//JPanel
ButtonMenu.setBackground(Color.LIGHT_GRAY);
MessageList.setBackground(Color.orange);
MessageList.setPreferredSize(new Dimension(400, 400));
Fframe.add(ButtonMenu,BorderLayout.WEST);
Fframe.add(MessageList,BorderLayout.CENTER);
ButtonMenu.add(b0);
b0.addActionListener(new b0listener());
Pane =new JScrollPane(Messages);
Messages.setPreferredSize(new Dimension(800,250));
//Pane.setMaximumSize(MessageList.getSize()) ;
MessageList.add( Pane);
Я уже объявил Jpanels и Jframe, кнопку в качестве участников класса