Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: -0.986 c
1-64149
Leo^Sun
2003-02-26 15:38
2003.03.20
Руссификация MessageDlg


14-64281
Roman Go
2003-03-06 09:58
2003.03.20
Кто нибудь встречал компонент


3-63973
Толян
2003-02-28 09:26
2003.03.20
Отчет. Не выводится секция GroupFooterBand почему?


14-64318
ASV
2003-02-28 10:08
2003.03.20
Человеконенавистники


3-64041
Виталий Панасенко
2003-03-01 14:11
2003.03.20
DBLookupComboBox




   Наверх