![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как будет грамотнее?
demon © (2008-08-07 12:49:00)Как будет грамотнее, создать все окна, которые есть в программе и делать их видимыми по мере надобности, или каждое окно создавать в своём потоке, и запускать потоки по мере надобности?
Какой вариант экономичнее для памяти?
{RASkov} (2008-08-17 17:21:00) [1]> [11] demon © (17.08.08 17:14)
> Но VCL программы ведь сначала создают все окна, а потом
> их можно паказать через form.show, или я не прав?
Форма - это не совсем окно, а такой же класс в VCL, как например TStringList....
В Делфи-приложениях по умолчанию все формы создаются при старте приложения. Их создание находится в файле проекта dpr.
Но там же или в опциях проекта можно изменить это. Т.е. исключить некоторые формы из автосоздаваемых....
> А еще, если заглянуть в процесс какой нить программы (с
> помощью специальных утилит, у меня плагин к TC), то можно
> увидеть, что там есть все классы всех её окон, можно присвоить
> окну visible - и оно будет видимым ;)
Что-то слишком у тебя все просто :)
Хотя на самом деле это и в самом деле не так сложно как кажется, но...)
demon (2008-08-17 17:14:00) [2]Но VCL программы ведь сначала создают все окна, а потом их можно паказать через form.show, или я не прав?
А еще, если заглянуть в процесс какой нить программы (с помощью специальных утилит, у меня плагин к TC), то можно увидеть, что там есть все классы всех её окон, можно присвоить окну visible - и оно будет видимым ;)
multiflex (2008-08-15 22:01:00) [3]
> Slym © (08.08.08 09:22) [9]
хорошую аналогию провел =-О, жесть !
Slym (2008-08-08 09:22:00) [4]Я с ужасом представил как винда запускает все свои приложения в срытом режиме, а в ярлыках программ стоит только команда Show
Slym (2008-08-08 09:20:00) [5]Блондинка пришла к врачу: Мне полностью раздеваться или попояс?
Полностью! я ведь окулист :)
Нат (2008-08-07 16:47:00) [6]Еще зависит от выбранного стиля.
Если занадобилось MDI - скрыть форму будет нельзя, только свернуть.
Создал-Поюзал-Уничтожил - универсальный метод.
Существенно
> если окна не супернавороченные
alex-drob (2008-08-07 15:56:00) [7]Удалено модератором
Примечание: Создание пустых сообщений
Johnmen (2008-08-07 15:36:00) [8]
> Rouse_ © (07.08.08 12:59) [2]
> В потоке то зачем их создавать?
> DVM © (07.08.08 13:28) [4]
> > или каждое окно создавать в своём потоке, и запускать потоки
> > по мере надобности?
> приключений ищешь на свою задницу?
Просто ему слово "поток" понравилось - загадочное и непостижимое.
DVM (2008-08-07 13:28:00) [9]
> или каждое окно создавать в своём потоке, и запускать потоки
> по мере надобности?
приключений ищешь на свою задницу?
> Какой вариант экономичнее для памяти?
Правильнее все окна и вообще весь интерфейс пользователя держать в одном (первичном) потоке. А окна создавать по мере необходимости в них. Когда необходимость отпадает уничтожать. Создание - уничтожение немного замедлит работу программы, но если окна не супернавороченные то это будет практически незаметно.
{RASkov} (2008-08-07 13:08:00) [10]> [0] demon © (07.08.08 12:49)
На твой вопрос нельзя ответить однозначно.... Все зависит от ситуации...
Вот например окно About часто в программе нужно?
И в связи с этим стоит ли каждый раз его создавать и держать в памяти?
Rouse_ (2008-08-07 12:59:00) [11]В потоке то зачем их создавать? Если радеешь за память - создавай окна по мере необходимости и разрушай как только они перестают быть нужными.
brother (2008-08-07 12:58:00) [12]судя по топикам, ты хочешь написать программу используя общий мозг окружающих... в гугле давно был? там ответы на твои вопросы есть...