Форум: "Начинающим";
Текущий архив: 2007.07.29;
Скачать: [xml.tar.bz2];
ВнизКак присвоить один код для многих компонентов одного типа Найти похожие ветки
← →
Dyakon_Frost © (2007-07-02 11:28) [0]Здравствуйте!
У меня есть 23 Edit"a и для всех них проводится одна и таже проверка! Как-нибудь можно прописать код так, чтобы не прописывать всем компонентам событие OnChange?
Заранее спасибо.
← →
Игорь Шевченко © (2007-07-02 11:31) [1]Назначать одно событие динамически ?
procedure MyForm.EditChange (Sender: TObject);
begin
...
end;
procedure MyForm.FormCreate (Sender: TObject);
var
I: Integer;
begin
for I:=0 to ComponentCount-1 do
if Components[I] is TEdit then
TEdit(Components[I]).OnChange := EditChange;
...
end;
← →
stone © (2007-07-02 11:32) [2]Событие OnChange в этом случае должно указывать на одну процедуру, например на обработчик OnChange любого из Edit"ов.
← →
_Asph © (2007-07-02 11:39) [3]По моему классически, надо на основе Edit сделать свой класс, где и прописать необходимый метод, и на форму уже навешивать этот класс, и не о чем не думать :)
← →
Desdechado © (2007-07-02 11:50) [4]> По моему классически, надо на основе Edit сделать свой класс,
Излишне. Если на каждый пшик городить классы, то зачем тогда остальное придумали?
Автору
Можно один обработчик назначить и в дизайн-тайме. Заметь, что при назначении можно не только дважды кликать для создания нового, но и из комбика выбрать уже имеющиеся.
← →
Dyakon_Frost © (2007-07-02 11:51) [5]Ну можно собственно и свой компонент написать на основе TEdit! Просто ищу самый простой способ.
← →
homm © (2007-07-02 11:51) [6]В инспекторе объектов, там где ты назначаешь действия на события, у каждого события есть такая кнопочки со стрелочкой справа. Она тебе и нужна.
← →
Anatoly Podgoretsky © (2007-07-02 11:52) [7]Событие придется всем прописать и другого пути нет, а вот обработчик события может быть общий.
А в чем у тебя сложность - выделить все нужные компоненты на форме и указать один раз обработчик.
← →
Dyakon_Frost © (2007-07-02 12:38) [8]
> А в чем у тебя сложность - выделить все нужные компоненты
> на форме и указать один раз обработчик.
Хотелось просто узнать, более понятные методы! А то не всегда этот способ подходит.
Всем большое спасибо! Решил пока огород не городить.
> Игорь Шевченко
Спасибо за пример! Очень познавательно.
← →
Anatoly Podgoretsky © (2007-07-02 13:04) [9]Если этот способ не подходит, то выделяем компонент в инспекторе объектов и на закладке событий назначаем ранее созданый обработчик.
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2007.07.29;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.04 c