2009-08-03 2 views
5

У меня есть JPanel, что я хочу добавить некоторые компоненты. в частности, JButton s во время выполнения на основе содержимого предоставленного пользователем файла.Как добавить компоненты в JPanel во время выполнения

Я могу добавить compontents к панели, если я называю это из конструктора JFrame производного класса формы, даже после того, как все остальное было построено, но если я прочитал файл первой и затем добавления компонентов к панели вызова но добавленные компоненты никогда не отображаются.

Кто-нибудь знает, как я заставляю Java делать то, что я хочу?

ответ

4

Вызовите метод validate() на JPanel после того, как вы добавили JButton s к нему.

+1

Я считаю, что revalidate() следует использовать для Swing, хотя 99% времени либо будут работать. – camickr

+0

revalidate используется для того, чтобы вызвать всех родителей компонента, на который он вызывается для раскладки своих детей. Для простого использования, как этот, проверка будет работать нормально. –