![]() |
|
Модераторы: LSD, AntonSaburov |
![]()
|
|
| kostay |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 205 Регистрация: 16.5.2007 Репутация: нет Всего: нет |
порылся я на форуме так и не нашол то 4то мне нужно, а то 4то нашол ни4его не понел...
есть панели при нажатии на кнопку они появляются, 4ерез 3 секунды мне надо 4тоб они ис4езли снова. 4ерез thread.sleep(3000) блокируется вся программа, а 4ерез Timer я вообше ни4о не понел. жду подсказок ) |
|||
|
||||
| filipp76 |
|
||||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 241 Регистрация: 4.4.2007 Где: Украина, Киев Репутация: 1 Всего: 1 |
Насколько я понял то thread.sleep(3000) ты используеш в основном классе или главном фрейме? Я бы порекомендовал вынести логику "появления панелей" в отдельный поток и все таки использовать thread.sleep(3000). Таймер тут не совсем подходит как мне кажется. Ведь он будет выполнять действие через определенный промежуток времени. Хотя можно использовать и его. Вот пример потока
Запускаеш поток так:
|
||||
|
|||||
| kostay |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 205 Регистрация: 16.5.2007 Репутация: нет Всего: нет |
так? класс MyThread увидит панели? |
|||
|
||||
| filipp76 |
|
||||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 241 Регистрация: 4.4.2007 Где: Украина, Киев Репутация: 1 Всего: 1 |
в фрейме где находится панель, напишите метод который и будет менять значение Visible у панели.
и замените
и все должно работать. Это сообщение отредактировал(а) filipp76 - 22.5.2007, 13:45 |
||||
|
|||||
| kostay |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 205 Регистрация: 16.5.2007 Репутация: нет Всего: нет |
спасибо
|
|||
|
||||
| kostay |
|
||||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 205 Регистрация: 16.5.2007 Репутация: нет Всего: нет |
всё полу4илось, но в отдельном класе не работало, NullPointerException, а вот как внутренний класс полу4илось.
вот так я запускаю:
вот так он выглядит:
проблема в том, 4то если жмёш на кнопку несколько раз то он не запускается а продолжается и отшот вроде как идёт после первого нажатия/неуверен, тоесть если быстро нажимать пока не прошло 3 секунды и панель не ис4езла то на какойто раз придётся пол секунды и панель ис4езает, как бы ето поправить, вот еслиб етот тхреад убивать после того как я полу4ил то 4то хо4у, то наверно можноб было его заного запустить... вобшем вот. Это сообщение отредактировал(а) kostay - 23.5.2007, 02:18 |
||||
|
|||||
| filipp76 |
|
||||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 241 Регистрация: 4.4.2007 Где: Украина, Киев Репутация: 1 Всего: 1 |
Насчет этого тебе ничего не скажу, я сам только учусь..) В качестве события на кнопку рекомендую использовать MousePressed В твоем примере если будеш тыкать на кнопку много раз то и поток будт запускатся n-е количество раз. Потому рекомендую например сделать какое-нить поле в GUI классе(где лежит panel), типа boolean(пусть назыв. Value) и инициализируеш его как false. При нажатии на кнопку проверяеш, если значение false тогда запускаеш поток. Запускаеш так(пишеш о обработчике события)
Поток пишеш так
В таком случае ты обезопасиш себя от многократного запуска потока при многоразовом нажатии на кнопку. При таком коде если сразу панель у тебя видна то после запуска она исчезнет, задержка 3 секунды и появится. Это сообщение отредактировал(а) filipp76 - 23.5.2007, 10:54 |
||||
|
|||||
| dorogoyIV |
|
||||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1503 Регистрация: 26.3.2007 Репутация: 36 Всего: 46 |
можно с кнопки снять обработчик
т.е. слушатель Это сообщение отредактировал(а) dorogoyIV - 23.5.2007, 13:34 |
||||
|
|||||
![]()
|
| Правила форума "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. |