Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Как правильно переключать режимы формы

16K
12 января 2009 года
alenov
36 / / 20.09.2007
Допустим на форме присутствует некий набор контролов. В меню стоит галочка, при отключении которой этот набор заменяется другим. Как правильнее это делать. Уничтожать предыдущие контролы и создавать новые или просто делать невидимым один из наборов. Есть ли существенная разница, если контролов немного (в каждом наборе меньше 10)? Если много (порядка 200)? Какие могут быть проблемы при том и другом решении.
397
12 января 2009 года
SergPas
527 / / 03.02.2007
Цитата: alenov
Допустим на форме присутствует некий набор контролов. В меню стоит галочка, при отключении которой этот набор заменяется другим. Как правильнее это делать. Уничтожать предыдущие контролы и создавать новые или просто делать невидимым один из наборов. Есть ли существенная разница, если контролов немного (в каждом наборе меньше 10)? Если много (порядка 200)? Какие могут быть проблемы при том и другом решении.



В этом случае Вам поможет компонент PageControl вкладки "Win32" палитры компонентов. Копайте в сторону создания мастера диалога (wizard) с использованием данного компонента. Гугл Вам в помощь!

16K
15 января 2009 года
alenov
36 / / 20.09.2007
Спасибо. Но больше интересует не как это сделать, а что правильнее: загружать контролы автоматически или прописывать вручную (в обработчике onCreate). Как делают профессионалы?
И еще вопрос: нужно ли уничножать созданные вручную компоненты при закрытии формы?
5
15 января 2009 года
hardcase
4.5K / / 09.08.2005
Цитата: alenov
Как делают профессионалы?


Профессионалы избегают такой модальности интерфейса.
Но если избежать нельзя можно воспользовтаться юзер-кнотролами (фреймами в делфи).
Если контролы разбросаны по форме, то переключаемые контролы загоняются в список и уже добавляются/удаляются с формы посредством обхода списка.

Цитата: alenov
И еще вопрос: нужно ли уничножать созданные вручную компоненты при закрытии формы?

Нет.

14
15 января 2009 года
Phodopus
3.3K / / 19.06.2008
Цитата: alenov
Спасибо. Но больше интересует не как это сделать, а что правильнее: загружать контролы автоматически или прописывать вручную (в обработчике onCreate). Как делают профессионалы?


не задолбаетесь вручную прописывать создание 200 контролов? для этого RAD и был создан и это отличало его от ранней вижуал студии. Можете сделать несколько диалогов с контролами, и создавать/разрушать их динамически в виде дочерних окон при смене чекбокса.

Цитата: alenov
нужно ли уничножать созданные вручную компоненты при закрытии формы?


Если контролу задан Owner, то он разрушит такой контрол при своем разрушении (никак не при закрытии). Если Owner не задан - нужно уничтожать явно.

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог