Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.03.20;
Скачать: CL | DM;

Вниз

Порядок установки свойств   Найти похожие ветки 

 
Raduga   (2003-03-07 10:17) [0]

Здравствуйте, Уважаемые.
В каком порядке устанавливаются значения published-свойств компонента после его создания? И можно ли самому задать порядок,чтобы значение нужного published-свойства устанавливалось
перед установкой остальных?
Спасибо.


 
Игорь Шевченко ©   (2003-03-07 10:53) [1]

Посмотри в тексте DFM, в каком порядке записаны свойства этого компонента на форме. Вот в таком порядке они и устанавливаются при загрузке компонента из потока.

Зависимость поведения компонента от порядка загрузки свойств не есть хорошо.


 
REA ©   (2003-03-07 10:56) [2]

Не забывай проверять csLoading in ComponentState при загрузке. Тогда возможно и порядок не понадобится.


 
Юрий Зотов ©   (2003-03-07 17:14) [3]

> И можно ли самому задать порядок,чтобы значение нужного
> published-свойства устанавливалось
> перед установкой остальных?

Можно. Это порядок объявления свойств в классе (начиная с самого дальнего предка). Но такой зависимости лучше действительно избегать.


 
malkolinge ©   (2003-03-07 17:54) [4]

В общем проблема наверняка в том, что срабатывают "невовремя побочные эффекты" свойств. Например, при заданий ListField срабатывает метод SetKeyField, который для примера, занимаеться отображением и построением списка....Причем из потока это свойство грузиться раньше Дейтасоурса :) Метод решения :

1. Когда csLoading , то "спорные" свойства пишуться в буфер, при этом побочные эффекты нужно отключать
2. Есть такая процедура у TComponenta Loaded она запускаеться автоматически после загрузки из потока все свойтсв, перекрывая ее устанавливаем свойства в нужном порядке. Сам делаю так и Борланд вроде тоже. Пример Грид :)))



Страницы: 1 вся ветка

Текущий архив: 2003.03.20;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.033 c
1-64127
OlegM
2003-03-11 08:06
2003.03.20
Прозрачный фон у текста


6-64258
0$a
2003-01-29 23:24
2003.03.20
Чат


1-64068
Юный_программер
2003-03-09 20:01
2003.03.20
Не подскажите есть ли функция в Делфях чтоб она возвращала значен


6-64251
BoB
2003-01-27 11:06
2003.03.20
DialUp соединения


14-64321
Донской
2003-03-04 09:48
2003.03.20
Interbase 6