| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: Для новичков > Default свойства |
| Автор: Christoph 12.2.2009, 19:27 | ||
Имеется такой вопрос,
Я кидаю например кнопку на форму, длина и ширина устанавливается, как? из конструктора?или устанавливается значение свойства Height=25? Я так понимаю, что если текущее значение свойства Height отличное от 25, то запись идет в файл формы, после этого, при компиляции,свойства объекта обновляются из файла формы? И чтот не верится что все published свойства объекта устанавливается через конструктор,спасибо |
| Автор: Snowy 12.2.2009, 20:11 |
| Размер устанавливается конструктором. В данном случае, свойство default говорит дефолтное значение. Если итоговое значение не будет отличаться, то оно не будет записано в dfm Само по себе оно ничего не устанавливает. Просто сообщает, что, если не меняем, то и сохранять его не нужно - оно и так будет таким. Если его изменить в инспекторе объектов, то оно подсветится жирным шрифтом, указывая, что свойство будет сохранено в dfm и помещено в ресурсы. Не жирные свойства не записываются. При запуске программы, компонент создаётся, ему назначается дефолтное значение. Когда все компоненты будут созданы, происходит чтение dmf файла, и устанавливаются все значения, всем компонентам, прописанные в dfm. То есть те, что отличны от default. |
| Автор: Christoph 12.2.2009, 21:59 |
| Snowy, это если я кидаю компонент на форму, то у него будет установлено свойство Height 25(в моем примере)? И еще что я хотел спросить например если я меняю размеры кнопки во время проектирования, то соотвествено тут же изменяется, если например свойство Visible поставить False то изменения происходят после компиляции (я так понимаю, что из файла формы загрузилась свойство Visible), почему же одни свойства меняются визуально во время проектирования а другие нет, это как то связано с этом темой? Спасибо |
| Автор: bems 12.2.2009, 22:56 | ||||||
для Visible все точно так же. Свойство измениться сразу же (но этого не видно). При этом измененное значение пишется в файл, а при выполнении читается и восстанавливается. На глаз изменений не видно только потому что кнопка умеет отличать, работает ли она делфи на редакторе или в запущеном екзешнике. Для случая с редактором в делфи она нормально дает изменить значение свойства, но не прячется визуально, потому что это было бы неудобно для того кто работает над интерфейсом. конкретнее как это происходит:
это проверка на то в дизайнере ли выполняется код. что-то типа такого ветвления есть и в коде кнопки |
| Автор: Christoph 12.2.2009, 23:54 |
| Спасибо за помощь, все разобрал, всем по плюсику |