안녕하십니까 ? (주) 천의무봉의 이용민입니다.
작업하다 간간히 의문이 있었던 것을 여쭤보고 싶습니다.
프로시저나 함수를 만들때 저는 (Sender: TObject) 를 사용하고 있는데 이것을 빼고 사용하여도 별 차이가 없는 것을 봅니다.
과연 프로시저나 함수에서
예) procedure TF_Dial.A_DisConnectExecute(Sender: TObject);
(Sender: TObject) 의 sender 는 어떤 경우에 사용하고 어떤 경우에 사용하지 않는 것인지 정확히 표현된 책이 없는 것 같군요.
고수의 도움을 부탁드립니다.
> 안녕하십니까 ? (주) 천의무봉의 이용민입니다.
> 작업하다 간간히 의문이 있었던 것을 여쭤보고 싶습니다.
>
> 프로시저나 함수를 만들때 저는 (Sender: TObject) 를 사용하고 있는데 이것을 빼고 사용하여도 별 차이가 없는 것을 봅니다.
>
> 과연 프로시저나 함수에서
> 예) procedure TF_Dial.A_DisConnectExecute(Sender: TObject);
> (Sender: TObject) 의 sender 는 어떤 경우에 사용하고 어떤 경우에 사용하지 않는 것인지 정확히 표현된 책이 없는 것 같군요.
> 고수의 도움을 부탁드립니다.
델파이 도뭄말에 sender에대한 정의와 사용법 :
The Sender parameter in an event handler informs Delphi which component received the event, and therefore called the handler. You can write a single event handler that responds to multiple component events by using the Sender parameter in an if..then..else statement.
아래에 간략히 sender를 사용하는 예제에 대해서 메서드를 작성해보았습니다.
두개의 라디오 버튼에 클릭 이벤트를 같은 메서드를 사용하도록하여
레이블의 바탕색을 바꾸는 것입니다.
이 내용은 비록 간략하나 이 것을 응용하여 더 강력한 프로그램을 만들 수 있겠죠.
procedure TForm1.check(Sender: TObject);
begin
if sender =RedradioButton then
Label1.Caption:=ClRed
else if sender =AquaradioButton then
Label1.Color:=ClAqua;
end;