다음을 통해 공유


MFC ActiveX 컨트롤: 스톡 메서드 추가

stock 메서드는 COleControl 클래스에 의해 이미 구현되었다는 점에서 사용자 지정 메서드와 다릅니다. 예를 들어 COleControl 컨트롤에 대한 Refresh 메서드를 지원하는 미리 정의된 멤버 함수를 포함합니다. 이 스톡 메서드에 대한 디스패치 맵 항목은 DISP_STOCKFUNC_REFRESH입니다.

중요합니다

ActiveX는 새로운 개발에 사용해서는 안 되는 레거시 기술입니다. ActiveX를 대체하는 최신 기술에 대한 자세한 내용은 ActiveX 컨트롤을 참조하세요.

COleControl 는 DoClick 및 Refresh의 두 가지 스톡 메서드를 지원합니다. 컨트롤의 사용자가 새로 고침을 호출하여 컨트롤의 모양을 즉시 업데이트합니다. DoClick은 컨트롤의 Click 이벤트를 실행하기 위해 호출됩니다.

메서드 디스패치 지도 항목 주석
DoClick DISP_STOCKPROP_DOCLICK( ) Click 이벤트를 실행합니다.
Refresh DISP_STOCKPROP_REFRESH( ) 컨트롤의 모양을 즉시 업데이트합니다.

메서드 추가 마법사를 사용하여 Stock 메서드 추가

스톡 메서드 추가는 메서드 추가 마법사를 사용하여 간단하게 수행할 수 있습니다. 다음 절차에서는 MFC ActiveX 컨트롤 마법사를 사용하여 만든 컨트롤에 새로 고침 메서드를 추가하는 방법을 보여 줍니다.

메서드 추가 마법사를 사용하여 주식 새로 고침 메서드를 추가하려면

  1. 컨트롤의 프로젝트를 로드하세요.

  2. 클래스 뷰에서 컨트롤의 라이브러리 노드를 확장합니다.

  3. 컨트롤의 인터페이스 노드(라이브러리 노드의 두 번째 노드)를 마우스 오른쪽 단추로 클릭하여 바로 가기 메뉴를 엽니다.

  4. 바로 가기 메뉴에서 추가 를 클릭한 다음 메서드 추가를 클릭합니다.

    그러면 메서드 추가 마법사가 열립니다.

  5. 메서드 이름 상자에서 새로 고침을 클릭합니다.

  6. 완료를 클릭합니다.

스톡 메서드에 대한 메서드 추가 마법사 변경 내용

스톡 새로 고침 메서드는 컨트롤의 기본 클래스에서 지원되므로 메서드 추가 마법사 는 컨트롤의 클래스 선언을 어떤 방식으로도 변경하지 않습니다. 메서드의 항목을 컨트롤의 디스패치 맵과 .IDL 파일에 추가합니다. 다음 줄은 구현 (.CPP) 파일에 있는 컨트롤의 디스패치 맵에 추가됩니다.

DISP_STOCKFUNC_REFRESH()

이렇게 하면 컨트롤의 사용자가 Refresh 메서드를 사용할 수 있습니다.

IDL 파일에 다음 줄이 추가됩니다.

[id(DISPID_REFRESH), helpstring("method Refresh")] void Refresh(void);

이 줄은 Refresh 메서드에 특정 ID 번호를 할당합니다.

참고하십시오

MFC ActiveX 컨트롤