물론 그렇게 할 순 있지만
모든 이벤트를 수동으로 연결해줘야 합니다. 엄청 불편하겠죠?
이벤트 핸들러가 엄청 많다면, 해당 컨트롤을 상속받아서 기본적인 이벤트를
자체적으로 처리할 수 있도록 수정해서 사용하는 것이 좋습니다.
예를들어 TEdit 컨트롤에서 Enter키를 누르면 다음 컨트롤로 포커스를 이동시키는
이벤트 핸들러를 폼에서 다 처리하는 경우가 많은데
이 경우엔 엄청난 시간 낭비일겁니다.
TEdit를 상속받아 TEditEx를 만든 후 이 컨트롤 내에서 Enter입력시 처리가 가능하도록
구현한다면 모든 폼에서 매번 반복해야 하는 삽질을 줄일 수 있겠지요?
제갈식 님이 쓰신 글 :
: 폼1의 이벤트 핸들링 처리를 폼2에서 해줄수 있을까요?
: //-----------------------------------------------------
: var
: Form1: TForm1;
:
: implementation
:
: {$R *.dfm}
:
: // 이 처리를 폼2에서 해주는게 가능한지 궁금합니다.
: procedure TForm1.Button1Click(Sender: TObject);
: begin
: ....
: end;
:
: 그렇게 하려는 이유는 메인폼의 이벤트 핸들링 처리문이 너무 많아서 다른 유닛으로 나누어 담기 위해서 입니다.
: 고수분들의 조언 부탁드립니다.
|