ActiveX 컨트롤 아키텍처
ActiveX 컨트롤 기술은 OLE의 여러 하위 수준 개체 및 인터페이스를 기반으로 합니다. 컨트롤에서 사용할 수 있는 정확한 인터페이스는 기능마다 다릅니다. 이 섹션에서는 컨트롤이 제공할 수 있는 기능을 자세히 살펴봅습니다.
ActiveX 컨트롤은 애플리케이션에서 사용자 인터페이스를 만들기 위한 구성 요소를 제공하는 데 사용됩니다. 예를 들어 컨테이너 애플리케이션을 클릭할 때 일부 작업을 시작하는 단추는 간단한 컨트롤입니다. 다음 측면은 이러한 사용자 인터페이스 구성 요소를 제공하는 데 포함됩니다.
- 컨트롤은 컨테이너 클라이언트 내에 포함되어 클라이언트 내의 일부 사용자 인터페이스 작업을 지원할 수 있습니다. 따라서 컨트롤은 컨테이너 내에 포함되는 경우 자체의 시각적 표현을 제공해야 하며, 해당 상태(예: 해당 속성 값 및 해당 컨테이너 내의 위치)를 저장하는 방법을 제공해야 합니다. 클라이언트는 개체가 포함된 컨테이너가 됨을 지원해야 합니다.
- 키보드 또는 마우스를 사용하여 컨트롤을 활성화하면 최종 사용자가 클라이언트 애플리케이션에서 일부 작업을 시작합니다. 따라서 컨트롤은 키보드 작업에 응답해야 하며 클라이언트의 활동을 컨테이너에 알리고 클라이언트에서 이벤트를 트리거할 수 있도록 클라이언트와 통신할 수 있어야 합니다.
- 또한 클라이언트는 일반적으로 최종 사용자가 컨트롤의 속성 및 메서드에서 제공하는 작업을 시작할 수 있는 프로그래밍 언어를 제공합니다. 따라서 컨트롤은 자동화 및 일부 디자인 타임 및 런타임 기능 집합도 지원해야 합니다.
사용자 인터페이스 구성 요소를 제공하는 역할의 결과로 컨트롤은 일반적으로 표시된 대로 OLE 기술을 사용하여 다음 영역의 기능을 지원합니다.
-
속성 및 메서드
-
다른 OLE 개체와 마찬가지로 컨트롤은 속성 및 메서드가 있는 들어오는 인터페이스 집합을 통해 많은 기능을 제공할 수 있습니다. 컨테이너는 추가 앰비언트 속성을 제공할 수 있으며 집계를 통해 컨트롤의 속성 확장을 지원할 수 있습니다. 이러한 기능은 OLE 자동화, 속성 페이지, 연결 가능한 개체 및 ActiveX 제어 기술에 달려 있습니다.
-
이벤트
-
ActiveX 컨트롤은 속성 및 메서드를 제공하는 것 외에도 나가는 인터페이스를 제공하여 클라이언트에 이벤트를 알릴 수 있습니다. 클라이언트는 이러한 이벤트 처리를 지원해야 합니다. 이러한 기능은 OLE 자동화 및 연결 가능한 개체를 사용합니다.
-
시각적 표현
-
컨트롤은 컨테이너 내에서 위치 지정 및 표시를 지원할 수 있습니다. 컨테이너는 컨트롤의 위치를 지정하고 크기를 결정합니다. 이러한 기능은 OLE 끌어서 놓기 기술을 비롯한 복합 문서 기술을 사용합니다.
-
키보드 처리
-
컨트롤은 최종 사용자가 컨트롤에서 수행하는 작업을 시작할 수 있도록 키보드 가속기에 응답할 수 있습니다. 컨테이너는 모든 포함된 컨트롤에 대한 키보드 작업을 관리합니다. 이러한 기능은 제어 및 복합 문서 기술을 사용합니다.
-
유지
-
컨트롤은 상태를 저장할 수 있습니다. 클라이언트는 포함된 컨트롤의 지속성을 관리합니다. 이러한 기능은 구조적 스토리지 및 개체 지속성 기술을 사용합니다.
-
등록 및 라이선스
-
컨트롤은 일반적으로 자체 등록을 지원하고 인스턴스화될 때 레지스트리 항목 집합을 만듭니다. 무단 사용을 방지하기 위해 컨트롤의 라이선스를 부여할 수도 있습니다.
이러한 기능의 대부분은 컨트롤과 해당 클라이언트 컨테이너를 모두 포함합니다.
관련 항목