|
|
|
Вопрос о панели
|
|||
|---|---|---|---|
|
#18+
Привет! Есть программка которая делает некоторые действия в фоновом режиме, т.е. на экране в некоторые моменты ее работы ничего не отображается. Это я и хочу исправить. Моя идея - в отдельном потоке вывести на экран какую либо панель, поток будет отслеживать изменение состояния некоего флага, которое будет сигнализировать о моменте прекращения действий в фоновом режиме. В этот момент поток должен убрать созданную ранее в нем панель. Панель хотелось бы без функциональных кнопок (свернуть, закрыть...), но повесить на нее прогресс бар, показывающий текущую стадию выполнения. Сам вопрос - каким классом воспользоваться для создания такой панели. Может у кого есть похожий примерчик, не первый же я с такой проблемой столкнулся :) У кого есть идеи - помогите, плиз! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.02.2007, 16:18:55 |
|
||
|
Вопрос о панели
|
|||
|---|---|---|---|
|
#18+
Dima11Панель хотелось бы без функциональных кнопок (свернуть, закрыть...), но повесить на нее прогресс бар, показывающий текущую стадию выполнения. Сам вопрос - каким классом воспользоваться для создания такой панели. JWindow ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.02.2007, 16:54:18 |
|
||
|
Вопрос о панели
|
|||
|---|---|---|---|
|
#18+
Спасибо, а примерчик без лишних кнопок можно? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.02.2007, 17:00:13 |
|
||
|
Вопрос о панели
|
|||
|---|---|---|---|
|
#18+
Файл MainApp.java: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. Файл FloatPanel.java: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.02.2007, 17:27:24 |
|
||
|
Вопрос о панели
|
|||
|---|---|---|---|
|
#18+
Огромное спасибо! Это как раз то, что и было нужно :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.02.2007, 18:53:36 |
|
||
|
Вопрос о панели
|
|||
|---|---|---|---|
|
#18+
ненадо флага если делать на сфинге то можа и нужа закидывать сообщения для компонента в очередь сообщений компонент оттудова будет получать сообщения для себя и значения для прогресс бара и окончания процесса воздействие наппрямую из дополнительного потока на сам компонент могет привести к блокировке с синхронизацией могут быть траблы лучше замутить JWindows, JFrame (контейнер кароче) в main при нажатии кнопки листенер запускает отдельный процесс иначе листенер забьет очередь и соответственно твой новый поток влияет на данные компонента - ну там хоть прогресс бар - шо хошь через подачу сообщений-евентов методом EventQueue.invokeLater(....); суть в том что пока листенер не завершит свою работу у тя прога будет мертвой поэтому надо быстро в ем создать новый процесс, листенер завершит свою работу, обработчик событий будет далее пахать а влиять на компонент будещь через invokeLater и будет те счастье в примерах как бы листенера нету и нечем забивать поток-обработчик очереди пахать будет но при наваротах - как тока будет листенер - применяй invokeLater ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.02.2007, 11:28:47 |
|
||
|
Вопрос о панели
|
|||
|---|---|---|---|
|
#18+
ваще все мифы о гружении сфинга именно отседова пригружаем листенер и ессесено поток обработки сообщений и потом кричим - во хренова ... тармазит а обработка событий не может пахать если ее пригрузили главное быренько разгрузить поток обработки через создание нового потока и новвый поток будет влиять на компоненты через очередь событий а если мы ее не загружаем то она у нас шустро пашет и все оки не стоит забывать о синхронизации - в сфинге ее практически нема за искл пару методов - поетому и введено управление через поток событии ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.02.2007, 11:37:20 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=34351122&tid=2146560]: |
0ms |
get settings: |
11ms |
get forum list: |
17ms |
check forum access: |
5ms |
check topic access: |
5ms |
track hit: |
49ms |
get topic data: |
12ms |
get forum data: |
4ms |
get page messages: |
56ms |
get tp. blocked users: |
2ms |
| others: | 332ms |
| total: | 493ms |

| 0 / 0 |
