![]() |
|
Модераторы: LSD, AntonSaburov |
![]()
|
|
| LSD |
|
|||
![]() Leprechaun Software Developer ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 15718 Регистрация: 24.3.2004 Где: Dublin Репутация: 210 Всего: 538 |
Да, и на твои обработчики ListDataListener. Вообщем, все что может прямо или косвенно вызываться.
-------------------- 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. |
|||
|
||||
| seacat79 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 46 Регистрация: 27.2.2007 Где: Украина, Одесса Репутация: нет Всего: 1 |
Выложи текст, который создает CellRender. Скорее всего, ты на каждый запрос генерируешь новый объект
|
|||
|
||||
| ShurikA |
|
|||
![]() Зануда ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1364 Регистрация: 29.10.2005 Где: Канада Репутация: нет Всего: 3 |
Есть такое дело, ну а как по другому в таком случае?
|
|||
|
||||
| seacat79 |
|
||||||
|
Новичок Профиль Группа: Участник Сообщений: 46 Регистрация: 27.2.2007 Где: Украина, Одесса Репутация: нет Всего: 1 |
Попробуй сделать следующее:
PageStatusIcon icon = new PageStatusIcon()-> переносишь в класс PageListCellRenderer а вместо:
делаешь что-нибудь типа
|
||||||
|
|||||||
| LSD |
|
|||
![]() Leprechaun Software Developer ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 15718 Регистрация: 24.3.2004 Где: Dublin Репутация: 210 Всего: 538 |
Создаешь один компонент, когда вызывается getListCellRendererComponent() задаешь для этого компонента нужные свойства (цвет, текст, иконку и т.д.) и возвращаешь его. В самом методе ничего не создаешь. -------------------- 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. |
|||
|
||||
| ShurikA |
|
|||
![]() Зануда ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1364 Регистрация: 29.10.2005 Где: Канада Репутация: нет Всего: 3 |
||||
|
||||
| seacat79 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 46 Регистрация: 27.2.2007 Где: Украина, Одесса Репутация: нет Всего: 1 |
Разницы нет, кроме того, что: 1) Ты не знаешь когда будет вызван сборщик мусора, и уберет все объекты 2) Есть вероятность того, что сборщик не может удалить объект, так как на него есть ссылки из других объектов. (Покажи код PageStatusIcon) |
|||
|
||||
| ShurikA |
|
|||
![]() Зануда ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1364 Регистрация: 29.10.2005 Где: Канада Репутация: нет Всего: 3 |
Это сообщение отредактировал(а) ShurikA - 27.2.2007, 13:45 |
|||
|
||||
| COVD |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1655 Регистрация: 26.7.2005 Репутация: 17 Всего: 43 |
Почему бы не активизировать лог gc (всего лишь добавить в командной строке параметр для JVM: -Xloggc:) и не посмотреть в динамике. Или в профайлере посмотреть, какие именно обьекты накапливаются. Утечка памяти - это не только OutOfMemory (это очень грубая ошибка проектирования). Проблема может быть также и в том, что gc будет убирать мусор, но вынужден будет включать FullGC, а это замораживает программу на некоторое время.
Это сообщение отредактировал(а) COVD - 27.2.2007, 16:08 |
|||
|
||||
| ShurikA |
|
|||
![]() Зануда ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1364 Регистрация: 29.10.2005 Где: Канада Репутация: нет Всего: 3 |
Секунду, что то я, по моему не догоняю... PageListCellRenderer вызывается что бы определить внешний вид ячейки, а при fireContentsChanged эти ячейки просто перерисовываутся, не так ли? |
|||
|
||||
| LSD |
|
|||
![]() Leprechaun Software Developer ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 15718 Регистрация: 24.3.2004 Где: Dublin Репутация: 210 Всего: 538 |
ListCellRenderer вызывается чтобы отрисовать одну ячейку (т.е. у него будет вызван метод paint()) fireContentsChanged() оповещает всех слушателей (в том числе и JList), что данные изменились. Если надо то JList произведет перерисовку изменившихся элементов. -------------------- 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, tux, javastic. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Java: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |