![]() |
Модераторы: LSD, AntonSaburov |
![]() ![]() ![]() |
|
agR |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 140 Регистрация: 19.7.2006 Где: Киев Репутация: нет Всего: 2 |
При очередной попытке изобрести велосипед наткнулся на странное (пока) для меня поведение JPanel при попытке изменить ее рамку.
Не мог бы кто-то обяснить, как правильно написать код для изменения рамки панели? Пока я пытаюсь делать так:
В конструкторе панели цвет рамки указывался красным, а потом по определенному событию я хотел бы увидеть, чтоб она стала зеленой. Подскажите плз как правильно. |
|||
|
||||
agR |
|
||||||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 140 Регистрация: 19.7.2006 Где: Киев Репутация: нет Всего: 2 |
Вот привожу код, который можно "пощупать".... в нем много лишнего, но все таки так и не ясно, почему не сробатывает repaint()....
Вот вспомагательный класс GUITools:
если в этом месте:
закомментировать dispose() то в конечном итоге рамка поменяет цвет..... но я хотел бы видеть это раньше чем появится второе окно. Понимаю, что в данном случае Thread.sleep() не лучший вариант, вот и жду совета, как это все переделать, чтоб это было граммотно и толково. Спасибо. |
||||||
|
|||||||
agR |
|
||||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 140 Регистрация: 19.7.2006 Где: Киев Репутация: нет Всего: 2 |
Все... вроде как решил, но на сколько это правильно - хз
![]() Вместо Thread.sleep() теперь используется Timer:
Надеюсь, это верное решение ![]() |
||||
|
|||||
niasilil |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 325 Регистрация: 4.6.2007 Где: USA Репутация: 1 Всего: 9 |
я код не запускал, но пару слов сказать могу
![]() Когда ты запускаешь sleep, ты заставляешь данный thread заснуть. То есть все перересовывания не будут поисходить пока thread не проснется. Когда ты запускаешь Timer, то он запускается в отдельном thread, соответственно основной у тебя имеет возможность продолжать работать - перересовывать все что хочешь. Rule of thumb: все задачи занимающие дольше чем 100 ms не стоит запускать в Event dispatch thread, а в отдельном thread. http://java.sun.com/products/jfc/tsc/artic...s/threads1.html http://java.sun.com/products/jfc/tsc/artic...s/threads2.html http://java.sun.com/products/jfc/tsc/artic...s/threads3.html -------------------- SCJP 5.0, SCJD |
|||
|
||||
agR |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 140 Регистрация: 19.7.2006 Где: Киев Репутация: нет Всего: 2 |
||||
|
||||
![]() ![]() ![]() |
Правила форума "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. |