![]() |
|
Модераторы: LSD, AntonSaburov |
![]()
|
|
| coolin |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 28 Регистрация: 4.9.2006 Репутация: нет Всего: нет |
java.lang.NullPointerException
at java.awt.Dimension.<init>(Dimension.java:91) at java.awt.Component.getMaximumSize(Component.java:2343) at java.awt.Container.getMaximumSize(Container.java:1627) at javax.swing.JComponent.getMaximumSize(JComponent.java:1652) at javax.swing.BoxLayout.checkRequests(BoxLayout.java:435) at javax.swing.BoxLayout.preferredLayoutSize(BoxLayout.java:251) at javax.swing.JToolBar$DefaultToolBarLayout.preferredLayoutSize(JToolBar.java:769) at java.awt.Container.preferredSize(Container.java:1558) at java.awt.Container.getPreferredSize(Container.java:1543) at javax.swing.JComponent.getPreferredSize(JComponent.java:1617) at java.awt.BorderLayout.layoutContainer(BorderLayout.java:798) at java.awt.Container.layout(Container.java:1401) at java.awt.Container.doLayout(Container.java:1390) at java.awt.Container.validateTree(Container.java:1473) at java.awt.Container.validateTree(Container.java:1480) at java.awt.Container.validateTree(Container.java:1480) at java.awt.Container.validateTree(Container.java:1480) at java.awt.Container.validateTree(Container.java:1480) at java.awt.Container.validateTree(Container.java:1480) at java.awt.Container.validateTree(Container.java:1480) at java.awt.Container.validateTree(Container.java:1480) at java.awt.Container.validateTree(Container.java:1480) at java.awt.Container.validateTree(Container.java:1480) at java.awt.Container.validateTree(Container.java:1480) at java.awt.Container.validateTree(Container.java:1480) at java.awt.Container.validateTree(Container.java:1480) at java.awt.Container.validateTree(Container.java:1480) at java.awt.Container.validateTree(Container.java:1480) at java.awt.Container.validateTree(Container.java:1480) at java.awt.Container.validateTree(Container.java:1480) at java.awt.Container.validateTree(Container.java:1480) at java.awt.Container.validateTree(Container.java:1480) at java.awt.Container.validate(Container.java:1448) at java.awt.Window.pack(Window.java:495) JFrame.pack(); иногда падает при паковке фрейма. Иногда при установке размеров. Зависимостей не нашел, похоже валиться от случая. используеться jre 1.5.0_08 |
|||
|
||||
| powerOn |
|
|||
![]() software saboteur ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 4367 Регистрация: 7.10.2005 Репутация: 31 Всего: 159 |
На других версиях JDK пробовал выполнять?
Код можешь показать? Поскольку так совершенно непонятно что могло послужить причиной. |
|||
|
||||
| coolin |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 28 Регистрация: 4.9.2006 Репутация: нет Всего: нет |
Проблема появилась с переходом с 1.4.0 на 1.5.0
код показать не могу, так как кода много. На фрейме несколько вкладок, на вкладках много элементов, используються все лэйауты. Построение всех компонентов происходит в нескольких десятков классов. В инете есть несколько багов похожих на мой http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6337517 http://jalbum.net/forum/thread.jspa?thread...essageID=100158 http://line6.com/cgi-bin/ultimatebb.cgi?ub...22&t=001076 но связи какими-то темами или еще с чем не нахожу... |
|||
|
||||
| coolin |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 28 Регистрация: 4.9.2006 Репутация: нет Всего: нет |
складываеться впечатление что при построении лэйаута используеться не совершенный алгоритм, который время от времени сыпиться.
|
|||
|
||||
| powerOn |
|
|||
![]() software saboteur ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 4367 Регистрация: 7.10.2005 Репутация: 31 Всего: 159 |
Так трудно сказать в чем причина: в твоем ли коде ошибка или в JDK. Если можешь, то напиши небольшой пример, где это поведение имеет место, иначе, не видя кода, ничего сказать не получится.
|
|||
|
||||
| coolin |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 28 Регистрация: 4.9.2006 Репутация: нет Всего: нет |
Я допускаю что где-то неправильно сформирован лэйаут, но при этом должно быть соответсвуещее предупреждение (от JDK).
powerOn, наверное ты прав, нужно это воспроизвести на простом примере, может и решиться сразу. |
|||
|
||||
| w1nd |
|
|||
![]() Вертилятор ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1077 Регистрация: 22.3.2006 Где: Москва Репутация: 23 Всего: 54 |
Причины этой и множества подобных ошибок в одом: вызов не из EDT. Уже чуть не на каждом заборе написано, что все свинговые компоненты рассчитаны на работу только в EDT и никак не защищены от конкурентных вызовов. Запомните: любые методы свинг-компонент можно вызывать только из EDT.
EDT - event dispatch thread -------------------- ![]() ![]() |
|||
|
||||
| LSD |
|
|||
![]() Leprechaun Software Developer ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 15718 Регистрация: 24.3.2004 Где: Dublin Репутация: 38 Всего: 538 |
repaint() и revalidate() можно вызывать из любого потока. -------------------- Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it. |
|||
|
||||
| coolin |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 28 Регистрация: 4.9.2006 Репутация: нет Всего: нет |
да нужно быть внимательнее со свингом.
в тулбар засовывалиь кнопки и в процессе построения лэйаута им задавались размеры, перебирая все компоненты тулбара. раз в 10 раз сам размер еще не был установлен, но флаг о его установке уже был *) - конкуренция потоков. Присваил все размеры сразу - все ок. всем пасиба Это сообщение отредактировал(а) coolin - 3.4.2007, 11:45 |
|||
|
||||
| LSD |
|
|||
![]() Leprechaun Software Developer ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 15718 Регистрация: 24.3.2004 Где: Dublin Репутация: 38 Всего: 538 |
Не забывай помечать вопрос как решенный.
-------------------- Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it. |
|||
|
||||
![]()
|
| Правила форума "Java" | |
|
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, jk1. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Java: GUI и Java FX приложения | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |