Модераторы: LSD, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> делать окно видимым невидимым 
:(
    Опции темы
Reptor
Дата 19.4.2008, 16:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1213
Регистрация: 29.12.2004

Репутация: 1
Всего: 0



У меня в приложении есть окошко extends JDialog и меню где есть подпункт с галочкой показывать это окошко или нет (ну обычный раздел Window в котором настраиваются окна будут ли они видимыми или нет). Так вот у меня вопрос как луче организовать это: создавать это окошко "new окошко extends JDialog" при старте программы и делать его по умолчанию setVisible(true); а при установке или снятии галочки в меню, делать  setVisible(true) и  setVisible(false) соответственно или создавать всегда новый экземпляр класса "new окошко extends JDialog" и удалять при снятии галочки??? Я больше скланяюсь 1-ому варианту, что скажите??


PM MAIL ICQ   Вверх
dorogoyIV
Дата 19.4.2008, 16:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1503
Регистрация: 26.3.2007

Репутация: 36
Всего: 46



ничего страшного, ты его создал один раз, а потом вызывай методом setVisible(true)
если будешь каждый раз создавать новое окошко, это явно будет неправильно
PM MAIL   Вверх
Reptor
Дата 19.4.2008, 18:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1213
Регистрация: 29.12.2004

Репутация: 1
Всего: 0



 а как можно сделать так что б это окно всегда было активно. Тоесть как в фотошопе что б полоска не становлось серой. И моё главное окно тоже становится неактивным когда это окошко активно и наоборот. Надо что б то и то всегда было актиано. Как это реализовать?? 
PM MAIL ICQ   Вверх
ivg
Дата 19.4.2008, 18:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Autonomous R&D
**


Профиль
Группа: Участник
Сообщений: 686
Регистрация: 8.2.2006
Где: Екатеринбург

Репутация: 4
Всего: 81



Цитата(dorogoyIV @  19.4.2008,  16:58 Найти цитируемый пост)
это явно будет неправильно

Почему?
В определённых условиях (если отрабатывает быстро, держит ссылки на множество объектов в памяти, вызывается редко) создание нового окна, по моему, будет оптимальнее, с точки зрения использования ресурсов (памяти). Всем ведь известно, что Java довольно требовательна к этому делу. Оптимизация использования памяти полезна, особенно для клиентских приложений с GUI. Нет?
PM MAIL   Вверх
powerOn
Дата 19.4.2008, 19:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


software saboteur
****


Профиль
Группа: Участник
Сообщений: 4367
Регистрация: 7.10.2005

Репутация: 31
Всего: 159



Согласен с  ivg. 
Нужно в первую очередь определить на сколько часто пользователь будет скрывать/отображать окно и какие затраты на создания окна при этом уходят. Далее определять оптимальную реализацию.

Вот моё мнение:
Скрывается/Отображается часто и затраты на создание нового окна значительные - создавать окно один раз.
Скрывается/Отображается редко и затраты на создание нового окна значительные - создавать окно каждый раз.
Скрывается/Отображается часто и затраты на создание нового окна не значительные - создавать окно каждый раз.
Скрывается/Отображается редко и затраты на создание нового окна не значительные - создавать окно каждый раз.

Фактически, в таком выборе слышны отголоски паттерна Object Pool, который управляет стратегией создания часто-требуемых и в тоже время тяжело создаваемых объектов. 

Это сообщение отредактировал(а) powerOn - 19.4.2008, 19:38


--------------------
user posted image нет времени думать - нужно писать КОД!

PM MAIL   Вверх
dorogoyIV
Дата 20.4.2008, 01:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1503
Регистрация: 26.3.2007

Репутация: 36
Всего: 46



Цитата(ivg @  19.4.2008,  18:21 Найти цитируемый пост)
 создание нового окна, по моему, будет оптимальнее

ну для JDialog это может быть и так.
а если например JFileChooser, то удобнее сделать один экземпляр компонента, и делать его видимым/невидимым.
насчет расхода ресурсов я даже не задумывался - потому, что такое окно по идее вызывается редко, и этот расход будет незначительный (хотя кто его знает как построено приложение smile )

вобщем можно долго бессмыссленно рассуждать, а как сделать - все равно решит developer
 smile

Добавлено через 6 минут и 17 секунд
Цитата(Reptor @  19.4.2008,  18:20 Найти цитируемый пост)
 Надо что б то и то всегда было актиано. Как это реализовать?? 

для Windows никак  smile 
PM MAIL   Вверх
Reptor
Дата 20.4.2008, 11:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1213
Регистрация: 29.12.2004

Репутация: 1
Всего: 0



Спасибо большое за высказаные мнения.

Цитата

Надо что б то и то всегда было актиано. Как это реализовать?? 


Вот тут на окне я поместил JToolBar а на нем JLabel с синей полоской и получилось  smile 
PM MAIL ICQ   Вверх
dorogoyIV
Дата 20.4.2008, 14:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1503
Регистрация: 26.3.2007

Репутация: 36
Всего: 46



хотел я тебе подсказать про другие кмпоненты, ну ты и сам догадался  smile 
PM MAIL   Вверх
Reptor
Дата 21.4.2008, 10:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1213
Регистрация: 29.12.2004

Репутация: 1
Всего: 0



dorogoyIV, а ну если есть ещё какие компоненты так я рад узнать о них 
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   jk1
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, jk1.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java: GUI и Java FX приложения | Следующая тема »


 




[ Время генерации скрипта: 0.0471 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.