Java JFrame с JTable не отображается правильно - PullRequest
0 голосов
/ 27 сентября 2019

У меня проблема с Java.Источники не включены, потому что они слишком длинные и сложные.Я попытаюсь описать проблему.

У меня есть класс (расширяет JFrame), чтобы показать JTable.Этот класс создается из основного приложения с помощью пункта меню.Пункт меню запускает метод (startJFrame), который запускает класс JFrame.Результат: JFrame показывается с заголовком и сеткой (JTable) с данными.

Для имитации ожидания я добавил длинный цикл со счетчиком и System.out.println счетчика в методе startJframe, после того, как де JFrame-класс был начат.Сейчас происходит нечто странное.JFrame показывается с заголовком, но без JTable и данных.Когда длинный цикл завершен, внезапно появляются JTable и данные.Я пробовал это также со сном и с ожиданием / уведомлением вместо длинной петли.Та же проблема.Я попробовал это, запустив метод startJFrame с помощью кнопки вместо пункта меню.Та же проблема.Промежуточные обновления кадра (frame.update (frame.getGraphics ());) не решают проблему.

Когда я добавляю код для запуска метода startJFrame где-то в приложении (не с помощью кнопки илипункт меню) все отлично работает.JFrame показывается с заголовком, JTable и данными, пока длинный цикл все еще работает.Так что он не ждет до конца цикла, чтобы показать JTable.

Может кто-нибудь объяснить это или дать мне подсказки подсказки подсказки?Почему есть разница между: - запуском прямо из основного приложения - запуском с помощью пункта меню / кнопки Это как-то связано со слушателями меню / кнопки?

...