다음을 통해 공유


7 단계: 웹 페이지에 컨트롤 배치

컨트롤이 완성 되었습니다.실제 상황에서 사용할 컨트롤을 보려면 웹 페이지에 배치 합니다.컨트롤을 정의할 때 컨트롤이 포함 된 HTML 파일을 만들었습니다.솔루션 탐색기에서 PolyCtl.htm 파일 열기 및 웹 페이지에서 컨트롤을 볼 수 있습니다.

이 단계에서는 웹 페이지에서 이벤트에 응답 하도록 스크립팅할 수 있습니다.또한 Internet Explorer 컨트롤 스크립트 사용에 안전한 것을 알 수 있도록 컨트롤을 수정 합니다.

웹 페이지 스크립팅

컨트롤 하지 않습니다 무엇 인지 아직 보내는 이벤트에 응답 하는 웹 페이지를 지금 변경.

웹 페이지를 스크립팅하려면

  1. Polyctl.htm을 열고 HTML 뷰를 선택 합니다.HTML 코드에 다음 줄을 추가 합니다.후 추가 해야 </OBJECT> 전에 </BODY>.

    <SCRIPT LANGUAGE="VBScript">
    <!--
    Sub PolyCtl_ClickIn(x, y)
       PolyCtl.Sides = PolyCtl.Sides + 1
    End Sub
    Sub PolyCtl_ClickOut(x, y)
       PolyCtl.Sides = PolyCtl.Sides - 1
    End Sub
    -->
    </SCRIPT>
    
  2. HTM 파일을 저장합니다.

면 속성에서 컨트롤 가져오고 컨트롤 내부를 클릭 하면 변의 수가 하나씩 증가 하는 VBScript 코드를 추가 했습니다.컨트롤 외부를 클릭 하면 변의 수가 하나씩 줄어듭니다.

컨트롤 스크립트 사용에 안전 하다

Internet Explorer 컨트롤을 웹 페이지를 볼 수 또는 Visual C++로 작성 된 웹 브라우저 보기에 더 편리 하 게 사용 합니다.웹 브라우저 보기에서 컨트롤을 보려면 Polyctl.htm을 마우스 오른쪽 단추로 클릭 하 고 보기 브라우저에서.

현재 Internet Explorer 보안 설정에 따라는 보안 하지 손상 대화 상자 컨트롤 스크립트에 안전 하지 않을 수 있습니다 잠재적으로 한다는 경고가 나타날 수 있습니다.예를 들어, 파일을 표시 하지만 컨트롤을 가진 경우는 Delete 파일을 삭제 하는 메서드를이 수 안전도 페이지에 표시할 경우.하지만 누군가 호출할 수 있기 때문에 해당, 스크립트를 안전 하지 않습니다는 Delete 메서드.

보안 정보보안 정보

이 자습서에 대 한 안전 표시 된 ActiveX 컨트롤을 실행 하려면 Internet Explorer 보안 설정을 변경할 수 있습니다.제어판에서 인터넷 속성 클릭 보안 적절 한 설정을 변경 합니다.자습서를 마치면 보안 설정을 원래 상태로 변경 합니다.

프로그래밍 방식으로 Internet Explorer 것이 특정 컨트롤에 대 한 보안 경고 대화 상자를 표시할 필요가 없습니다 경고할 수 있습니다.이에 IObjectSafety 인터페이스 및 ATL 클래스에이 인터페이스의 구현을 제공 IObjectSafetyImpl.인터페이스 컨트롤을 추가 하려면 추가 IObjectSafetyImpl 상속 된 클래스의 목록 및 항목에 대 한 COM 지도로 추가.

IObjectSafetyImpl 컨트롤을 추가 하려면

  1. Polyctl.h에서 상속 된 클래스는 목록 끝에 다음 줄을 추가 하 고 이전 줄에 쉼표를 추가 합니다.

    public IObjectSafetyImpl<CPolyCtl, INTERFACESAFE_FOR_UNTRUSTED_CALLER>
    
  2. Polyctl.h의 COM 맵에 다음 줄을 추가 합니다.

    COM_INTERFACE_ENTRY(IObjectSafety)
    

빌드 및 컨트롤 테스트

컨트롤을 빌드하십시오.빌드가 완료 되 면 브라우저 보기에서 Polyctl.htm을 다시 엽니다.이 이번에는 웹 페이지 보안 경고 대화 상자 없이 바로 나타납니다.다각형 내부를 클릭 합니다. 변의 수가 하나씩 증가 합니다.변의 수를 줄이려면 다각형 외부를 클릭 합니다.아래 세 변의 수를 줄일 경우 설정할 오류 메시지가 표시 됩니다.

단계 6으로 다시

다음 단계

이 ATL 자습서를 완료 했습니다.ATL에 대 한 자세한 정보 링크에 대 한 참조는 ATL 시작 페이지.

참고 항목

참조

ATL 자습서