Тема: Sender : TObject
Показать сообщение отдельно
  #2  
Старый 15.03.2008, 13:49
Rosenkrantz Rosenkrantz вне форума
Активный
 
Регистрация: 04.12.2007
Адрес: Москва
Сообщения: 234
Версия Delphi: Delphi 7
Репутация: 40
По умолчанию

Sender бывает нужен, например, когда вы для нескольких однотипных (или даже разнотипных) элементов создаете один обработчик события. Тогда в этом обработчике вам может понадобиться знать - кто именно его вызвал.

Например:
Код:
procedure ClickOnLabel(Sender: TObject);
begin
  If (Sender is TLabel) and ((Sender as TLabel).FocusControl <> nil) then
    (Sender as TLabel).FocusControl.SetFocus; 
end;
Указав эту процедуру в качестве обработчика OnClick для всех TLabel на форме, мы получим их одинаковую реакцию на щелчок мыши - фокус будет передан компоненту, связанному с TLabel.
Ответить с цитированием