![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Однотипные процедуры
Леонид © (2007-03-24 21:08:00)У меня есть набор одинаковых элементов, подскажите как сделать так чтобы когда пользователь переходит к другому элементу вызывалась процедура проверки и редактирования содержимого. Процедура проверки уже написанна, но элементов 40 шт, и писать для каждого
procedure TForm1.Edit1Exit(Sender: TObject);
begin
//Процедура проверки
end;
не хочется. Возможно ли TForm1.Edit1Exit применить для всех элементов, для Edit1..EditN. И как это сделать? Спосибо.
RASkov (2007-03-25 00:18:00) [1]> (Sender as Tedit)
>
> Так надёжнее. Все таки раздел "Начинающим"
Тогда уж так:
procedure TForm1.Edit1Exit(Sender: TObject);
begin
if Sender is TEdit then Verify((Sender as Tedit).Text);
end;
Можно же и так вызвать обработчик:
procedure TForm1.ButtonClick(Sender: TObject);
begin
Edit1Exit(Sender);
end;
PS Verify - какая-то сомодельная проверка Едитов
Belorus (2007-03-24 23:37:00) [2](Sender as Tedit)
Так надёжнее. Все таки раздел "Начинающим"
Леонид (2007-03-24 21:21:00) [3]Спосибо.
Kolan (2007-03-24 21:19:00) [4]> того Edit фокус которого был потерен
Sender объект вызвавший событие
Леонид (2007-03-24 21:18:00) [5]Хорошо, а так чтобы проверял содержимое того Edit фокус которого был потерен
Kolan (2007-03-24 21:14:00) [6]Можно выбрать сразу ве элементы и всем разом назначить.
И самое главное:
но элементов 40 шт
Нафиг не надо столько, перепроэктируй UI пока не поздно.
Belorus (2007-03-24 21:12:00) [7]Выдели все свои компоненты к которым нужно применить и св-во OnExit укажи например TForm1.Edit1Exit
Kolan (2007-03-24 21:10:00) [8]> TForm1.Edit1Exit применить для всех элементов
Да, просто в дизайнере перейди на вкладку Events и в событии(OnClick например) выбири эту функцию из списка.
Ватиант два использоватьс TActionList, TActionManager.