Вниз
Скачать: CL | DM;

Как определить событие OnChange?   Найти похожие ветки 

 
MaXie ©   (2003-07-11 12:44) [0]

Приложение состоящее всего из одной формы активно работает со списком ValList - объектом класса TStringList. Каким образом можно определить событие OnChange этого объекта или как правильного его объявить?


 
VMcL ©   (2003-07-11 12:53) [1]

TStringList.OnChange ?


 
MaXie ©   (2003-07-11 13:20) [2]

Верно!
Как его записать в модуле формы?


 
MaXie ©   (2003-07-11 13:34) [3]

Почему события можно определить только для визуальных объектов формы? Почему если к композиции мы добавляем невизуальный объект:

private
ValList: TStringList;
...

То определить для него событие OnChange, так же как и для визуальных компонент формы, мы не можем?
Процедура:

procedure TForm1.ValListChange(Sender: TObject);

- не проходит!



 
ЮЮ ©   (2003-07-11 13:37) [4]

>Приложение состоящее всего из одной формы активно работает со списком ValList

Что значит работает? Что ты понимаешь под Сhange списка. Во всех местах кода, где ты полагаешь происходит это самый Сhange вызывай любой (свой) метод формы, это и будет т.н. список.OnСhange :-)


 
Владислав ©   (2003-07-11 13:49) [5]

> MaXie © (11.07.03 13:34)
Добавь в конструкторе формы ValList.OnChange := ValListChange


 
MaXie ©   (2003-07-11 13:51) [6]

> Что ты понимаешь под Сhange списка.

Под событием OnChange списка я понимаю то же самое, что и событие большинства других компонент Delphi: любые изменения состава или в составе строк, хранящихся в списке!

> Во всех местах кода, где ты полагаешь происходит это самый Сhange вызывай любой (свой) метод формы, это и будет т.н. список.OnСhange

Предположим, что форма содержит миллион полей (объекты класса TEdit). В этом случае ты предлагаешь миллион раз прописать "этот самый Change"?
Гораздо проще, чтобы сам список отслеживал свое собственное состояние при любых изменениях в своем составе, а не в каждом поле запускать "этот самый Change" с целью проверки состояния объекта ValList!


 
MaXie ©   (2003-07-11 13:54) [7]

> Владислав
Чуть по-подробней можешь описать предложение?
Речь идет о событии: TForm1.FormCreate(Sender: TObject);?


 
ЮЮ ©   (2003-07-11 13:56) [8]

Сорри, действительно есть TStringList.OnChange, даже и не подозревал. Да и сечас не подозреваю, зачем его можно использовать


 
MaXie ©   (2003-07-11 13:56) [9]

> Владислав
Низкий поклон! Работает! Спасибо за помощь!



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

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



Память: 0.47 MB
Время: 0.012 c
8-78010
pasha676
2003-04-02 10:58
2003.07.24
Торможу с рисованием в канвасе...


1-77854
Номолос
2003-07-13 08:07
2003.07.24
? про меню


7-78162
DVM
2003-05-15 13:32
2003.07.24
Как вызвать диалог


3-77740
me2
2003-07-01 11:55
2003.07.24
Фильтрация набора данных


7-78172
Nucl
2003-05-16 13:19
2003.07.24
2 монитора




   Наверх