인터페이스와 코드의 분리에 대한 많은 이론을 읽은 후 명령/동작 패턴을 어떻게 이해하는지 궁금합니다. 나는 또한 여기에 Dlephi의 명령/액션 모드를 언급 할 때 TactionList, TactionManager와 같은 일련의 액션 컨트롤입니다 델파이 컨트롤 또는 이벤트 통화 방법은 델파이 컨트롤의 설계 방법입니다. 다시 말해, 명령/동작 모드를 의도적으로 추구 할 필요는 없지만 일반 인코딩에주의를 기울이기에 충분합니다.
내가 이해하는 한 Tbutton의 Onclick 이벤트를 가져 가십시오.
일반적 으로이 이벤트를 정의하려면 컨트롤을 두 번 클릭 한 다음 코드를 작성하십시오.
절차 tform1.Button1click (sender : tobject);
시작하다
...;
끝;
어떤 사람들은 코드와 인터페이스 사이의 커플 링이 더 심각하다고 생각할 수 있습니다.이 기능은 실제로 인터페이스와 혼합되므로 매우 번거 롭습니다.
그러나 나는 그렇게 생각하지 않습니다. 다음 예를 들어 봅시다.
이 함수를 구현하기 위해 다른 Button2 (또는 Menuitem 또는 다른 명령 이벤트)를 사용하려면 Button1 Click으로 OnClick 이벤트를 가리키면됩니다. 수정할 때 Button1Click 코드를 유지하십시오.
또는 둘째, Button2를 초기화 할 때 (Button2가 동적으로 만들 수 있기 때문에) Button2.onClick을 만듭니다.
Taction 객체를 사용하는 인터페이스의 컨트롤에 대해 이야기 해 봅시다. 인터페이스 객체에서 간단한 작업을 수행 할 수 있지만 일반적으로 기능의 발신자 매개 변수를 호출하여 동일한 작업을 완료 할 수 있습니다. 모든 호출 Button1click의 공간이 사라지면 다음을 수행 할 수 있습니다.
발신자가 tcontrol 인 경우
tcontrol (sender) .Visible : = false;
이것은 taction.visible을 호출하는 것과 다르지 않습니다.