Показать сообщение отдельно
  #4  
Старый 23.02.2008, 11:36
Аватар для s0Creator
s0Creator s0Creator вне форума
Местный
 
Регистрация: 20.02.2008
Адрес: Московская область
Сообщения: 420
Репутация: 884
По умолчанию

В общем виде:
Чем мне нравится Делфи - в ней исходники почти всех компонентов.
Если немного полазить то можно увидеть мого интересного.

Про события:
Бросим на форму TEdit
дойдем до TCustomEdit
там есть свойство
property OnChange: TNotifyEvent read FOnChange write FOnChange;Если нажать Ctrl и кликнуть на TNotifyEvent то увидим
TNotifyEvent = procedure(Sender: TObject) of object;

TNotifyEvent - это самый распространенный тип для обработки событий
но в некоторые события передаются дополнительные параметры
TKeyPressEvent = procedure(Sender: TObject; var Key: Char) of object; Чтобы динамически создать (изменить) обработчик на событие необходимо прописать обработчик соответствующий этому событию.
Самый легкий путь в TForm
Procedure MyEditKeyPress(Sender: TObject; var Key: Char);
Procedure MyEditChange(Sender: TObject);
и соответственно написать саму обработку
и привязать ксобытию
Если один обработчик обрабатывает события нескольких объектов то удобно пользоваться параметром Sender
который указывает на объект в котором произошло событие
например так

procedure TForm1.MyEditChange(Sender: TObject);
begin
(Sender as TEdit).Text := 'Ненадо менять мой текст';
end;
Ответить с цитированием