다음을 통해 공유


CDHtmlDialog 수업

대화 상자 리소스 대신 HTML을 사용하여 사용자 인터페이스를 구현하는 대화 상자를 만드는 데 사용됩니다.

구문

class CDHtmlDialog : public CDialog, public CDHtmlEventSink

멤버

공용 생성자

속성 설명
CDHtmlDialog::CDHtmlDialog CDHtmlDialog 개체를 생성합니다.
CDHtmlDialog::~CDHtmlDialog CDHtmlDialog 개체를 삭제합니다.

공용 메서드

이름 설명
CDHtmlDialog::CanAccessExternal 로드된 페이지의 스크립팅 개체가 컨트롤 사이트의 외부 디스패치에 액세스할 수 있는지 여부를 확인하기 위해 액세스 검사로 호출되는 재정의 가능 디스패치가 스크립팅에 안전하거나 현재 영역에서 스크립팅에 안전하지 않은 개체를 허용하는지 확인합니다.
CDHtmlDialog::CreateControlSite 대화 상자에서 WebBrowser 컨트롤을 호스트하는 컨트롤 사이트 인스턴스를 만드는 데 사용되는 재정의 가능
CDHtmlDialog::DDX_DHtml_AxControl HTML 페이지에서 ActiveX 컨트롤의 멤버 변수와 속성 값 간에 데이터를 교환합니다.
CDHtmlDialog::DDX_DHtml_CheckBox HTML 페이지의 멤버 변수와 확인란 간에 데이터를 교환합니다.
CDHtmlDialog::DDX_DHtml_ElementText HTML 페이지의 멤버 변수와 HTML 요소 속성 간에 데이터를 교환합니다.
CDHtmlDialog::DDX_DHtml_Radio HTML 페이지의 멤버 변수와 라디오 단추 간에 데이터를 교환합니다.
CDHtmlDialog::DDX_DHtml_SelectIndex HTML 페이지에서 목록 상자의 인덱스 가져오거나 설정합니다.
CDHtmlDialog::DDX_DHtml_SelectString HTML 페이지에서 현재 인덱스 기반 목록 상자 항목의 표시 텍스트를 가져오거나 설정합니다.
CDHtmlDialog::DDX_DHtml_SelectValue HTML 페이지에서 현재 인덱스 기반 목록 상자 항목의 값을 가져오거나 설정합니다.
CDHtmlDialog::DestroyModeless 모덜리스 대화 상자를 제거합니다.
CDHtmlDialog::EnableModeless 모덜리스 대화 상자를 사용하도록 설정합니다.
CDHtmlDialog::FilterDataObject 대화 상자에서 호스트된 브라우저에서 만든 클립보드 데이터 개체를 필터링할 수 있습니다.
CDHtmlDialog::GetControlDispatch IDispatch HTML 문서에 포함된 ActiveX 컨트롤의 인터페이스를 검색합니다.
CDHtmlDialog::GetControlProperty 지정된 ActiveX 컨트롤의 요청된 속성을 검색합니다.
CDHtmlDialog::GetCurrentUrl 현재 문서와 연결된 URL(Uniform Resource Locator)을 검색합니다.
CDHtmlDialog::GetDHtmlDocument 현재 로드된 IHTMLDocument2 HTML 문서에서 인터페이스를 검색합니다.
CDHtmlDialog::GetDropTarget 대화 상자가 대안을 IDropTarget제공할 수 있도록 드롭 대상으로 사용될 때 포함된 WebBrowser 컨트롤에 의해 호출됩니다.
CDHtmlDialog::GetElement HTML 요소의 인터페이스를 가져옵니다.
CDHtmlDialog::GetElementHtml HTML 요소의 innerHTML 속성을 검색합니다.
CDHtmlDialog::GetElementInterface HTML 요소에서 요청된 인터페이스 포인터를 검색합니다.
CDHtmlDialog::GetElementProperty HTML 요소의 속성 값을 검색합니다.
CDHtmlDialog::GetElementText HTML 요소의 innerText 속성을 검색합니다.
CDHtmlDialog::GetEvent IHTMLEventObj 현재 이벤트 개체에 대한 포인터를 가져옵니다.
CDHtmlDialog::GetExternal 호스트의 인터페이스를 IDispatch 가져옵니다.
CDHtmlDialog::GetHostInfo 호스트의 UI 기능을 검색합니다.
CDHtmlDialog::GetOptionKeyPath 사용자 기본 설정이 저장되는 레지스트리 키를 검색합니다.
CDHtmlDialog::HideUI 호스트의 UI를 숨깁니다.
CDHtmlDialog::IsExternalDispatchSafe 호스트의 IDispatch 인터페이스가 스크립팅에 안전한지 여부를 나타냅니다.
CDHtmlDialog::LoadFromResource 지정된 리소스를 WebBrowser 컨트롤에 로드합니다.
CDHtmlDialog::Navigate 지정한 URL로 이동합니다.
CDHtmlDialog::OnBeforeNavigate 탐색 이벤트가 발생하기 전에 프레임워크에서 호출됩니다.
CDHtmlDialog::OnDocumentComplete 문서가 상태에 도달하면 애플리케이션에 알리기 위해 프레임워크에서 READYSTATE_COMPLETE 호출됩니다.
CDHtmlDialog::OnDocWindowActivate 문서 창이 활성화되거나 비활성화될 때 프레임워크에서 호출됩니다.
CDHtmlDialog::OnFrameWindowActivate 프레임 창이 활성화되거나 비활성화될 때 프레임워크에서 호출됩니다.
CDHtmlDialog::OnInitDialog 메시지에 대한 응답으로 호출되었습니다 WM_INITDIALOG .
CDHtmlDialog::OnNavigateComplete 탐색 이벤트가 완료된 후 프레임워크에서 호출됩니다.
CDHtmlDialog::ResizeBorder 개체에 테두리 공간의 크기를 조정해야 한다고 경고합니다.
CDHtmlDialog::SetControlProperty ActiveX 컨트롤의 속성을 새 값으로 설정합니다.
CDHtmlDialog::SetElementHtml HTML 요소의 innerHTML 속성을 설정합니다.
CDHtmlDialog::SetElementProperty HTML 요소의 속성을 설정합니다.
CDHtmlDialog::SetElementText HTML 요소의 innerText 속성을 설정합니다.
CDHtmlDialog::SetExternalDispatch 호스트의 인터페이스를 IDispatch 설정합니다.
CDHtmlDialog::SetHostFlags 호스트의 UI 플래그를 설정합니다.
CDHtmlDialog::ShowContextMenu 상황에 맞는 메뉴가 표시될 때 호출됩니다.
CDHtmlDialog::ShowUI 호스트의 UI를 표시합니다.
CDHtmlDialog::TranslateAccelerator 메뉴 가속기 키 메시지를 처리하기 위해 호출됩니다.
CDHtmlDialog::TranslateUrl 로드할 URL을 수정하기 위해 호출됩니다.
CDHtmlDialog::UpdateUI 호스트에 명령 상태가 변경되었음을 알리기 위해 호출되었습니다.

공용 데이터 멤버

속성 설명
CDHtmlDialog::m_bUseHtmlTitle HTML 문서의 제목을 대화 상자 캡션으로 사용할지 여부를 나타냅니다.
CDHtmlDialog::m_nHtmlResID 표시할 HTML 리소스의 리소스 ID입니다.
CDHtmlDialog::m_pBrowserApp 웹 브라우저 애플리케이션에 대한 포인터입니다.
CDHtmlDialog::m_spHtmlDoc HTML 문서에 대한 포인터입니다.
CDHtmlDialog::m_strCurrentUrl 현재 URL입니다.
CDHtmlDialog::m_szHtmlResID HTML 리소스 ID의 문자열 버전입니다.

설명

CDHtmlDialog 는 HTML 리소스 또는 URL에서 표시할 HTML을 로드할 수 있습니다.

CDHtmlDialog 는 HTML 컨트롤을 사용하여 데이터 교환을 수행하고 단추 클릭과 같은 HTML 컨트롤의 이벤트를 처리할 수도 있습니다.

상속 계층 구조

CObject

CDHtmlSinkHandlerBase2

CDHtmlSinkHandlerBase1

CCmdTarget

CDHtmlSinkHandler

CWnd

CDHtmlEventSink

CDialog

CDHtmlDialog

요구 사항

머리글: afxdhtml.h

DDX_DHtml 도우미 매크로

DDX_DHtml 도우미 매크로를 사용하면 HTML 페이지에서 일반적으로 사용되는 컨트롤 속성에 쉽게 액세스할 수 있습니다.

데이터 교환 매크로

속성 설명
DDX_DHtml_ElementValue 선택한 컨트롤에서 Value 속성을 설정하거나 검색합니다.
DDX_DHtml_ElementInnerText 현재 요소의 시작 태그와 끝 태그 사이의 텍스트를 설정하거나 검색합니다.
DDX_DHtml_ElementInnerHtml 현재 요소의 시작 태그와 끝 태그 간에 HTML을 설정하거나 검색합니다.
DDX_DHtml_Anchor_Href 대상 URL 또는 앵커 지점을 설정하거나 검색합니다.
DDX_DHtml_Anchor_Target 대상 창 또는 프레임을 설정하거나 검색합니다.
DDX_DHtml_Img_Src 문서에서 이미지 또는 비디오 클립의 이름을 설정하거나 검색합니다.
DDX_DHtml_Frame_Src 연결된 프레임의 URL을 설정하거나 검색합니다.
DDX_DHtml_IFrame_Src 연결된 프레임의 URL을 설정하거나 검색합니다.

CDHtmlDialog::CanAccessExternal

로드된 페이지의 스크립팅 개체가 컨트롤 사이트의 외부 디스패치에 액세스할 수 있는지 여부를 확인하기 위해 액세스 검사로 호출되는 재정의 가능 디스패치가 스크립팅에 안전하거나 현재 영역에서 스크립팅에 안전하지 않은 개체를 허용하는지 확인합니다.

virtual BOOL CanAccessExternal();

Return Value

성공하면 0이 아니고, 그렇지 않으면 0입니다.

CDHtmlDialog::CDHtmlDialog

리소스 기반 동적 HTML 대화 상자를 생성합니다.

CDHtmlDialog();

CDHtmlDialog(
    LPCTSTR lpszTemplateName,
    LPCTSTR szHtmlResID,
    CWnd *pParentWnd = NULL);

CDHtmlDialog(
    UINT nIDTemplate,
    UINT nHtmlResID = 0,
    CWnd *pParentWnd = NULL);

매개 변수

lpszTemplateName
대화 상자 템플릿 리소스의 이름인 null로 끝나는 문자열입니다.

szHtmlResID
HTML 리소스의 이름인 null로 끝나는 문자열입니다.

pParentWnd
대화 상자 개체가 속한 부모 또는 소유자 창 개체(형식 CWnd)에 대한 포인터입니다. NULL이 경우 대화 상자 개체의 부모 창이 주 애플리케이션 창으로 설정됩니다.

nIDTemplate
대화 상자 템플릿 리소스의 ID 번호를 포함합니다.

nHtmlResID
HTML 리소스의 ID 번호를 포함합니다.

설명

생성자의 두 번째 형식은 템플릿 이름을 통해 대화 상자 리소스에 대한 액세스를 제공합니다. 생성자의 세 번째 형식은 리소스 템플릿의 ID를 통해 대화 상자 리소스에 대한 액세스를 제공합니다. 일반적으로 ID는 접두사로 IDD_ 시작합니다.

CDHtmlDialog::~CDHtmlDialog

CDHtmlDialog 개체를 제거합니다.

virtual ~CDHtmlDialog();

설명

멤버 함수는 CWnd::DestroyWindow 에 의해 CDialog::Create만들어진 모덜리스 대화 상자를 삭제하는 데 사용해야 합니다.

CDHtmlDialog::CreateControlSite

대화 상자에서 WebBrowser 컨트롤을 호스트하는 컨트롤 사이트 인스턴스를 만드는 데 사용되는 재정의 가능

virtual BOOL CreateControlSite(
    COleControlContainer* pContainer,
    COleControlSite** ppSite,
    UINT /* nID */,
    REFCLSID /* clsid */);

매개 변수

pContainer
COleControlContainer 개체에 대한 포인터입니다.

ppSite
에 대한 포인터에 대한 포인터입니다 COleControlSite.

Return Value

성공하면 0이 아니고, 그렇지 않으면 0입니다.

설명

고유한 컨트롤 사이트 클래스의 인스턴스를 반환하도록 이 멤버 함수를 재정의할 수 있습니다.

CDHtmlDialog::DDX_DHtml_AxControl

HTML 페이지에서 ActiveX 컨트롤의 멤버 변수와 속성 값 간에 데이터를 교환합니다.

void DDX_DHtml_AxControl(
    CDataExchange* pDX,
    LPCTSTR szId,
    DISPID dispId,
    VARIANT& var);

void DDX_DHtml_AxControl(
    CDataExchange* pDX,
    LPCTSTR szId,
    LPCTSTR szPropName,
    VARIANT& var);

매개 변수

pDX
CDataExchange 개체에 대한 포인터입니다.

szId
ActiveX 컨트롤의 HTML 원본에 있는 개체 태그의 ID 매개 변수 값입니다.

dispId
데이터를 교환하려는 속성의 디스패치 ID입니다.

szPropName
속성의 이름입니다.

var
ActiveX 컨트롤 속성과 교환된 값을 보유하는 형식 VARIANTCOleVariant또는 CComVariant형식의 데이터 멤버입니다.

예시

// COleVariant m_varSliderValue;
DDX_DHtml_AxControl(pDX, _T("slider1"), 0x0b /* Value */, m_varSliderValue);

CDHtmlDialog::DDX_DHtml_CheckBox

HTML 페이지의 멤버 변수와 확인란 간에 데이터를 교환합니다.

void DDX_DHtml_CheckBox(
    CDataExchange* pDX,
    LPCTSTR szId,
    int& value);

매개 변수

pDX
CDataExchange 개체에 대한 포인터입니다.

szId
HTML 컨트롤의 ID 매개 변수에 대해 지정한 값입니다.

value
교환되는 값입니다.

예시

// int m_nItalic;
DDX_DHtml_CheckBox(pDX, L"italic", m_nItalic);

CDHtmlDialog::DDX_DHtml_ElementText

HTML 페이지의 멤버 변수와 HTML 요소 속성 간에 데이터를 교환합니다.

void DDX_DHtml_ElementText(
    CDataExchange* pDX,
    LPCTSTR szId,
    DISPID dispId,
    CString& value);

void DDX_DHtml_ElementText(
    CDataExchange* pDX,
    LPCTSTR szId,
    DISPID dispId,
    short& value);

void DDX_DHtml_ElementText(
    CDataExchange* pDX,
    LPCTSTR szId,
    DISPID dispId,
    int& value);

void DDX_DHtml_ElementText(
    CDataExchange* pDX,
    LPCTSTR szId,
    DISPID dispId,
    long& value);

void DDX_DHtml_ElementText(
    CDataExchange* pDX,
    LPCTSTR szId,
    DISPID dispId,
    DWORD& value);

void DDX_DHtml_ElementText(
    CDataExchange* pDX,
    LPCTSTR szId,
    DISPID dispId,
    float& value);

void DDX_DHtml_ElementText(
    CDataExchange* pDX,
    LPCTSTR szId,
    DISPID dispId,
    double& value);

매개 변수

pDX
CDataExchange 개체에 대한 포인터입니다.

szId
HTML 컨트롤의 ID 매개 변수에 대해 지정한 값입니다.

dispId
데이터를 교환하려는 HTML 요소의 디스패치 ID입니다.

value
교환되는 값입니다.

CDHtmlDialog::DDX_DHtml_Radio

HTML 페이지의 멤버 변수와 라디오 단추 간에 데이터를 교환합니다.

void DDX_DHtml_Radio(
    CDataExchange* pDX,
    LPCTSTR szId,
    long& value);

매개 변수

pDX
CDataExchange 개체에 대한 포인터입니다.

szId
HTML 컨트롤의 ID 매개 변수에 대해 지정한 값입니다.

value
교환되는 값입니다.

CDHtmlDialog::DDX_DHtml_SelectIndex

HTML 페이지에서 목록 상자의 인덱스 가져오거나 설정합니다.

void DDX_DHtml_SelectIndex(
    CDataExchange* pDX,
    LPCTSTR szId,
    long& value);

매개 변수

pDX
CDataExchange 개체에 대한 포인터입니다.

szId
HTML 컨트롤의 매개 변수에 대해 지정한 값입니다 id .

value
교환되는 값입니다.

CDHtmlDialog::DDX_DHtml_SelectString

HTML 페이지에서 현재 인덱스 기반 목록 상자 항목의 표시 텍스트를 가져오거나 설정합니다.

void DDX_DHtml_SelectString(
    CDataExchange* pDX,
    LPCTSTR szId,
    CString& value);

매개 변수

pDX
CDataExchange 개체에 대한 포인터입니다.

szId
HTML 컨트롤의 ID 매개 변수에 대해 지정한 값입니다.

value
교환되는 값입니다.

CDHtmlDialog::DDX_DHtml_SelectValue

HTML 페이지에서 현재 인덱스 기반 목록 상자 항목의 값을 가져오거나 설정합니다.

void DDX_DHtml_SelectValue(
    CDataExchange* pDX,
    LPCTSTR szId,
    CString& value);

매개 변수

pDX
CDataExchange 개체에 대한 포인터입니다.

szId
HTML 컨트롤의 ID 매개 변수에 대해 지정한 값입니다.

value
교환되는 값입니다.

예시

// CString m_strBlurDir;
DDX_DHtml_SelectValue(pDX, L"blurDir", m_strBlurDir);

CDHtmlDialog::DestroyModeless

개체에서 CDHtmlDialog 모덜리스 대화 상자를 분리하고 개체를 삭제합니다.

void DestroyModeless();

CDHtmlDialog::EnableModeless

모덜리스 대화 상자를 사용하도록 설정합니다.

STDMETHOD(EnableModeless)(BOOL fEnable);

매개 변수

fEnable
Windows SDK에서 IDocHostUIHandler::EnableModeless 참조 fEnable 하세요.

Return Value

E_NOTIMPL을(를) 반환합니다.

설명

이 멤버 함수는 CDHtmlDialog Windows SDK에 설명된 대로 구현 IDocHostUIHandler::EnableModeless입니다.

CDHtmlDialog::FilterDataObject

대화 상자에서 호스트된 브라우저에서 만든 클립보드 데이터 개체를 필터링할 수 있습니다.

STDMETHOD(FilterDataObject)(
    IDataObject* pDO,
    IDataObject** ppDORet);

매개 변수

pDO
Windows SDK에서 IDocHostUIHandler::FilterDataObject 참조 pDO 하세요.

ppDORet
Windows SDK에서 IDocHostUIHandler::FilterDataObject 참조 ppDORet 하세요.

Return Value

S_FALSE을(를) 반환합니다.

설명

이 멤버 함수는 CDHtmlDialog Windows SDK에 설명된 대로 구현 IDocHostUIHandler::FilterDataObject입니다.

CDHtmlDialog::GetControlDispatch

에서 반환GetDHtmlDocumentIDispatch HTML 문서에 포함된 ActiveX 컨트롤의 인터페이스를 검색합니다.

HRESULT GetControlDispatch(
    LPCTSTR szId,
    IDispatch** ppdisp);

매개 변수

szId
ActiveX 컨트롤의 HTML ID입니다.

ppdisp
IDispatch 웹 페이지에 있는 경우 컨트롤의 인터페이스입니다.

Return Value

표준 HRESULT 값입니다.

CDHtmlDialog::GetControlProperty

지정된 ActiveX 컨트롤의 요청된 속성을 검색합니다.

VARIANT GetControlProperty(
    LPCTSTR szId,
    LPCTSTR szPropName);

VARIANT GetControlProperty(
    LPCTSTR szId,
    DISPID dispId);

VARIANT GetControlProperty(
    IDispatch* pdispControl,
    DISPID dispId);

매개 변수

szId
ActiveX 컨트롤의 HTML ID입니다.

szPropName
현재 사용자의 기본 로캘에 있는 속성의 이름입니다.

pdispControl
IDispatch ActiveX 컨트롤의 포인터입니다.

dispId
속성의 디스패치 ID입니다.

Return Value

요청된 속성을 포함하는 변형이거나 컨트롤 또는 속성을 찾을 수 없는 경우 빈 변형입니다.

설명

오버로드는 맨 위에서 가장 효율적이지 않은 것부터 맨 아래에서 가장 효율적인 오버로드까지 나열됩니다.

CDHtmlDialog::GetCurrentUrl

현재 문서와 연결된 URL(Uniform Resource Locator)을 검색합니다.

void GetCurrentUrl(CString& szUrl);

매개 변수

szUrl
CString 검색할 URL을 포함하는 개체입니다.

CDHtmlDialog::GetDHtmlDocument

현재 로드된 IHTMLDocument2 HTML 문서에서 인터페이스를 검색합니다.

HRESULT GetDHtmlDocument(IHTMLDocument2 **pphtmlDoc);

매개 변수

**pphtmlDoc HTML 문서에 대한 포인터에 대한 포인터입니다.

Return Value

표준 HRESULT. 성공하면 S_OK(이)가 반환됩니다.

CDHtmlDialog::GetDropTarget

대화 상자가 대안을 IDropTarget제공할 수 있도록 드롭 대상으로 사용될 때 포함된 WebBrowser 컨트롤에 의해 호출됩니다.

STDMETHOD(GetDropTarget)(
    IDropTarget* pDropTarget,
    IDropTarget** ppDropTarget);

매개 변수

pDropTarget
Windows SDK에서 IDocHostUIHandler::GetDropTarget 참조 pDropTarget 하세요.

ppDropTarget
Windows SDK에서 IDocHostUIHandler::GetDropTarget 참조 ppDropTarget 하세요.

Return Value

E_NOTIMPL을(를) 반환합니다.

설명

이 멤버 함수는 CDHtmlDialog Windows SDK에 설명된 대로 구현 IDocHostUIHandler::GetDropTarget입니다.

CDHtmlDialog::GetElement

로 지정된 HTML 요소의 인터페이스를 szElementId반환합니다.

HRESULT GetElement(
    LPCTSTR szElementId,
    IDispatch** ppdisp,
    BOOL* pbCollection = NULL);

HRESULT GetElement(
    LPCTSTR szElementId,
    IHTMLElement** pphtmlElement);

매개 변수

szElementId
HTML 요소의 ID입니다.

ppdisp
IDispatch 요청된 요소 또는 요소 컬렉션에 대한 포인터입니다.

pbCollection
BOOL 나타내는 ppdisp 개체가 단일 요소인지 아니면 요소 컬렉션인지를 나타내는 값입니다.

pphtmlElement
요청된 IHTMLElement 요소에 대한 포인터입니다.

Return Value

표준 HRESULT 값입니다.

설명

지정된 ID를 가진 요소가 둘 이상 있을 수 있는 조건을 처리해야 하는 경우 첫 번째 오버로드를 사용합니다. 마지막 매개 변수를 사용하여 반환된 인터페이스 포인터가 컬렉션에 대한 것인지 아니면 단일 항목인지 확인할 수 있습니다. 인터페이스 포인터가 컬렉션에 있는 경우 해당 속성을 쿼리 IHTMLElementCollection 하고 해당 item 속성을 사용하여 서수 위치로 요소를 참조할 수 있습니다.

페이지에 ID가 같은 요소가 두 개 이상 있으면 두 번째 오버로드가 실패합니다.

CDHtmlDialog::GetElementHtml

innerHTML 식별되는 szElementIdHTML 요소의 속성을 검색합니다.

BSTR GetElementHtml(LPCTSTR szElementId);

매개 변수

szElementId
HTML 요소의 ID입니다.

Return Value

innerHTML 요소를 찾을 수 없는 경우 식별된 szElementId NULL HTML 요소의 속성입니다.

CDHtmlDialog::GetElementInterface

로 식별되는 HTML 요소에서 요청된 인터페이스 포인터를 szElementId검색합니다.

template <class Q> HRESULT GetElementInterface(
    LPCTSTR szElementId,
    Q** ppvObj);

HRESULT GetElementInterface(
    LPCTSTR szElementId,
    REFIID refiid,
    void** ppvObj);

매개 변수

szElementId
HTML 요소의 ID입니다.

ppvObj
요소가 발견되고 쿼리가 성공하면 요청된 인터페이스 포인터로 채워지는 포인터의 주소입니다.

refiid
요청된 인터페이스의 IID(인터페이스 ID)입니다.

Return Value

표준 HRESULT 값입니다.

예시

CComPtr<IHTMLInputButtonElement> spBtn1;
CComPtr<IHTMLInputButtonElement> spBtn2;
HRESULT hr = S_OK;

// Use the template overload
hr = GetElementInterface(L"Button1", &spBtn1);

// Use the nontemplate overload
hr = GetElementInterface(L"Button1", IID_IHTMLInputButtonElement,
                         reinterpret_cast<void **>(&spBtn2));

CDHtmlDialog::GetElementProperty

로 식별szElementId되는 HTML 요소에서 식별되는 dispId 속성의 값을 검색합니다.

VARIANT GetElementProperty(
    LPCTSTR szElementId,
    DISPID dispId);

매개 변수

szElementId
HTML 요소의 ID입니다.

dispId
속성의 디스패치 ID입니다.

Return Value

속성 또는 요소를 찾을 수 없는 경우 속성 값 또는 빈 변형입니다.

CDHtmlDialog::GetElementText

innerText 식별되는 szElementIdHTML 요소의 속성을 검색합니다.

BSTR GetElementText(LPCTSTR szElementId);

매개 변수

szElementId
HTML 요소의 ID입니다.

Return Value

innerText 속성 또는 NULL 요소를 찾을 수 없는 경우 식별된 szElementId HTML 요소의 속성입니다.

CDHtmlDialog::GetEvent

IHTMLEventObj 현재 이벤트 개체에 대한 포인터를 반환합니다.

HRESULT GetEvent(IHTMLEventObj** ppEventObj);

매개 변수

ppEventObj
인터페이스 포인터로 채울 포인터의 IHTMLEventObj 주소입니다.

Return Value

표준 HRESULT 값입니다.

설명

이 함수는 DHTML 이벤트 처리기 내에서만 호출해야 합니다.

CDHtmlDialog::GetExternal

호스트의 인터페이스를 IDispatch 가져옵니다.

STDMETHOD(GetExternal)(IDispatch** ppDispatch);

매개 변수

ppDispatch
Windows SDK에서 IDocHostUIHandler::GetExternal 참조 ppDispatch 하세요.

Return Value

성공 또는 E_NOTIMPL 실패에 대해 반환 S_OK 합니다.

설명

이 멤버 함수는 CDHtmlDialog Windows SDK에 설명된 대로 구현 IDocHostUIHandler::GetExternal입니다.

CDHtmlDialog::GetHostInfo

호스트의 UI 기능을 검색합니다.

STDMETHOD(GetHostInfo)(DOCHOSTUIINFO* pInfo);

매개 변수

pInfo
Windows SDK에서 IDocHostUIHandler::GetHostInfo 참조 pInfo 하세요.

Return Value

S_OK을(를) 반환합니다.

설명

이 멤버 함수는 CDHtmlDialog Windows SDK에 설명된 대로 구현 IDocHostUIHandler::GetHostInfo입니다.

CDHtmlDialog::GetOptionKeyPath

사용자 기본 설정이 저장되는 레지스트리 키를 검색합니다.

STDMETHOD(GetOptionKeyPath)(
    LPOLESTR* pchKey,
    DWORD dw);

매개 변수

pchKey
Windows SDK에서 IDocHostUIHandler::GetOptionKeyPath 참조 pchKey 하세요.

dw
Windows SDK에서 IDocHostUIHandler::GetOptionKeyPath 참조 dw 하세요.

Return Value

E_NOTIMPL을(를) 반환합니다.

설명

이 멤버 함수는 CDHtmlDialog Windows SDK에 설명된 대로 구현 IDocHostUIHandler::GetOptionKeyPath입니다.

CDHtmlDialog::HideUI

호스트의 UI를 숨깁니다.

STDMETHOD(HideUI)(void);

Return Value

E_NOTIMPL을(를) 반환합니다.

설명

이 멤버 함수는 CDHtmlDialog Windows SDK에 설명된 대로 구현 IDocHostUIHandler::HideUI입니다.

CDHtmlDialog::IsExternalDispatchSafe

호스트의 IDispatch 인터페이스가 스크립팅에 안전한지 여부를 나타냅니다.

virtual BOOL IsExternalDispatchSafe();

Return Value

FALSE을(를) 반환합니다.

CDHtmlDialog::LoadFromResource

지정된 리소스를 DHTML 대화 상자의 WebBrowser 컨트롤에 로드합니다.

BOOL LoadFromResource(LPCTSTR lpszResource);
BOOL LoadFromResource(UINT nRes);

매개 변수

lpszResource
로드할 리소스의 이름을 포함하는 문자열에 대한 포인터입니다.

nRes
로드할 리소스의 ID입니다.

Return Value

성공하면 TRUE이고, 그렇지 않으면 FALSE입니다.

CDHtmlDialog::m_bUseHtmlTitle

HTML 문서의 제목을 대화 상자 캡션으로 사용할지 여부를 나타냅니다.

BOOL m_bUseHtmlTitle;

설명

TRUE경우 m_bUseHtmlTitle 대화 상자 캡션은 HTML 문서의 제목과 동일하게 설정되고, 그렇지 않으면 대화 상자 리소스의 캡션이 사용됩니다.

CDHtmlDialog::m_nHtmlResID

표시할 HTML 리소스의 리소스 ID입니다.

UINT m_nHtmlResID;

예시

CDHtmlDialog mydialog(IDD_MYDHTMLDLG);
mydialog.m_nHtmlResID = IDR_HTML_MYDHTMLDLG;
mydialog.DoModal();

CDHtmlDialog::m_pBrowserApp

웹 브라우저 애플리케이션에 대한 포인터입니다.

CComPtr <IWebBrowser2> m_pBrowserApp;

CDHtmlDialog::m_spHtmlDoc

HTML 문서에 대한 포인터입니다.

CComPtr<IHTMLDocument2> m_spHtmlDoc;

CDHtmlDialog::m_strCurrentUrl

현재 URL입니다.

CString m_strCurrentUrl;

CDHtmlDialog::m_szHtmlResID

HTML 리소스 ID의 문자열 버전입니다.

LPTSTR m_szHtmlResID;

예시

CDHtmlDialog mydialog(IDD_MYDHTMLDLG);
TCHAR szResID[] = _T("HTML_PAGE");
mydialog.m_szHtmlResID = szResID;
mydialog.DoModal();

로 지정된 URL로 식별되는 리소스로 lpszURL이동합니다.

void Navigate(
    LPCTSTR lpszURL,
    DWORD dwFlags = 0,
    LPCTSTR lpszTargetFrameName = NULL,
    LPCTSTR lpszHeaders = NULL,
    LPVOID lpvPostData = NULL,
    DWORD dwPostDataLen = 0);

매개 변수

lpszURL
대상으로 지정할 URL을 포함하는 문자열에 대한 포인터입니다.

dwFlags
기록 목록에 리소스를 추가할지 여부, 캐시에 읽거나 캐시에서 쓸지 여부 및 새 창에 리소스를 표시할지 여부를 지정하는 변수의 플래그입니다. 변수는 열거형에서 정의한 값의 조합일 BrowserNavConstants 수 있습니다.

lpszTargetFrameName
리소스를 표시할 프레임의 이름을 포함하는 문자열에 대한 포인터입니다.

lpszHeaders
서버로 보낼 HTTP 헤더를 지정하는 값에 대한 포인터입니다. 이러한 헤더는 기본 Internet Explorer 헤더에 추가됩니다. 헤더는 서버에 필요한 작업, 서버에 전달되는 데이터 형식 또는 상태 코드와 같은 정보를 지정할 수 있습니다. URL이 HTTP URL이 아닌 경우 이 매개 변수는 무시됩니다.

lpvPostData
HTTP POST 트랜잭션과 함께 보낼 데이터에 대한 포인터입니다. 예를 들어 POST 트랜잭션은 HTML 양식에서 수집한 데이터를 보내는 데 사용됩니다. 이 매개 변수가 사후 데이터를 Navigate 지정하지 않으면 HTTP GET 트랜잭션을 실행합니다. URL이 HTTP URL이 아닌 경우 이 매개 변수는 무시됩니다.

dwPostDataLen
HTTP POST 트랜잭션을 사용하여 보낼 데이터입니다. 예를 들어 POST 트랜잭션은 HTML 양식에서 수집한 데이터를 보내는 데 사용됩니다. 이 매개 변수가 사후 데이터를 Navigate 지정하지 않으면 HTTP GET 트랜잭션을 실행합니다. URL이 HTTP URL이 아닌 경우 이 매개 변수는 무시됩니다.

CDHtmlDialog::OnBeforeNavigate

탐색이 발생하기 전에 이벤트가 발생하도록 프레임워크에서 호출됩니다.

virtual void OnBeforeNavigate(
    LPDISPATCH pDisp,
    LPCTSTR szUrl);

매개 변수

pDisp
IDispatch 개체에 대한 포인터입니다.

szUrl
탐색할 URL이 포함된 문자열에 대한 포인터입니다.

CDHtmlDialog::OnDocumentComplete

문서가 상태를 달성했을 때 애플리케이션에 알리기 위해 프레임워크에서 READYSTATE_COMPLETE 호출됩니다.

virtual void OnDocumentComplete(
    LPDISPATCH pDisp,
    LPCTSTR szUrl);

매개 변수

pDisp
IDispatch 개체에 대한 포인터입니다.

szUrl
탐색된 URL이 포함된 문자열에 대한 포인터입니다.

CDHtmlDialog::OnDocWindowActivate

문서 창이 활성화되거나 비활성화될 때 프레임워크에서 호출됩니다.

STDMETHOD(OnDocWindowActivate)(BOOL fActivate);

매개 변수

fActivate
Windows SDK에서 IDocHostUIHandler::OnDocWindowActivate 참조 fActivate 하세요.

Return Value

E_NOTIMPL을(를) 반환합니다.

설명

이 멤버 함수는 CDHtmlDialog Windows SDK에 설명된 대로 구현 IDocHostUIHandler::OnDocWindowActivate입니다.

CDHtmlDialog::OnFrameWindowActivate

프레임 창이 활성화되거나 비활성화될 때 프레임워크에서 호출됩니다.

STDMETHOD(OnFrameWindowActivate)(BOOL fActivate);

매개 변수

fActivate
Windows SDK에서 IDocHostUIHandler::OnFrameWindowActivate 참조 fActivate 하세요.

Return Value

E_NOTIMPL을(를) 반환합니다.

설명

이 멤버 함수는 CDHtmlDialog Windows SDK에 설명된 대로 구현 IDocHostUIHandler::OnFrameWindowActivate입니다.

CDHtmlDialog::OnInitDialog

메시지에 대한 응답으로 호출되었습니다 WM_INITDIALOG .

virtual BOOL OnInitDialog();

Return Value

기본 구현은 TRUE를 반환합니다.

설명

이 메시지는 대화 상자가 표시되기 직전에 발생하는 , CreateIndirect또는 DoModal 호출 중에 Create대화 상자로 전송됩니다.

대화 상자가 초기화될 때 특수 처리를 수행해야 하는 경우 이 멤버 함수를 재정의합니다. 재정의된 버전에서 먼저 기본 클래스 OnInitDialog 를 호출하지만 반환 값을 무시합니다. 일반적으로 재정의된 멤버 함수에서 반환 TRUE 됩니다.

Windows는 OnInitDialog 메시지 맵이 아닌 모든 Microsoft Foundation 클래스 라이브러리 대화 상자에 공통된 표준 전역 대화 상자 프로시저를 통해 함수를 호출하므로 이 멤버 함수에 대한 메시지 맵 항목이 필요하지 않습니다.

CDHtmlDialog::OnNavigateComplete

지정된 URL에 대한 탐색이 완료된 후 프레임워크에서 호출됩니다.

virtual void OnNavigateComplete(
    LPDISPATCH pDisp,
    LPCTSTR szUrl);

매개 변수

pDisp
IDispatch 개체에 대한 포인터입니다.

szUrl
탐색된 URL이 포함된 문자열에 대한 포인터입니다.

CDHtmlDialog::ResizeBorder

개체에 테두리 공간의 크기를 조정해야 한다고 경고합니다.

STDMETHOD(ResizeBorder)(
    LPCRECT prcBorder,
    IOleInPlaceUIWindow* pUIWindow,
    BOOL fRameWindow);

매개 변수

prcBorder
Windows SDK에서 IDocHostUIHandler::ResizeBorder 참조 prcBorder 하세요.

pUIWindow
Windows SDK에서 IDocHostUIHandler::ResizeBorder 참조 pUIWindow 하세요.

fFrameWindow
Windows SDK에서 IDocHostUIHandler::ResizeBorder 참조 fFrameWindow 하세요.

Return Value

E_NOTIMPL을 반환합니다.

CDHtmlDialog::SetControlProperty

ActiveX 컨트롤의 속성을 새 값으로 설정합니다.

void SetControlProperty(
    LPCTSTR szElementId,
    DISPID dispId,
    VARIANT* pVar);

void SetControlProperty(
    IDispatch* pdispControl,
    DISPID dispId,
    VARIANT* pVar);

void SetControlProperty(
    LPCTSTR szElementId,
    LPCTSTR szPropName,
    VARIANT* pVar);

매개 변수

szElementId
ActiveX 컨트롤의 HTML ID입니다.

dispId
설정할 속성의 디스패치 ID입니다.

pVar
VARIANT 새 속성 값을 포함하는 포인터입니다.

pdispControl
ActiveX 컨트롤의 인터페이스에 대한 포인터입니다 IDispatch .

szPropName
설정할 속성의 이름을 포함하는 문자열입니다.

CDHtmlDialog::SetElementHtml

HTML 요소의 innerHTML 속성을 설정합니다.

void SetElementHtml(
    LPCTSTR szElementId,
    BSTR bstrText);

void SetElementHtml(
    IUnknown* punkElem,
    BSTR bstrText);

매개 변수

szElementId
HTML 요소의 ID입니다.

bstrText
innerHTML 속성의 새 값입니다.

punkElem
IUnknown HTML 요소의 포인터입니다.

CDHtmlDialog::SetElementProperty

HTML 요소의 속성을 설정합니다.

void SetElementProperty(
    LPCTSTR szElementId,
    DISPID dispId,
    VARIANT* pVar);

매개 변수

szElementId
HTML 요소의 ID입니다.

dispId
설정할 속성의 디스패치 ID입니다.

pVar
속성의 새 값입니다.

CDHtmlDialog::SetElementText

HTML 요소의 innerText 속성을 설정합니다.

void SetElementText(
    LPCTSTR szElementId,
    BSTR bstrText);

void SetElementText(
    IUnknown* punkElem,
    BSTR bstrText);

매개 변수

szElementId
HTML 요소의 ID입니다.

bstrText
innerText 속성의 새 값입니다.

punkElem
IUnknown HTML 요소의 포인터입니다.

CDHtmlDialog::SetExternalDispatch

호스트의 인터페이스를 IDispatch 설정합니다.

void SetExternalDispatch(IDispatch* pdispExternal);

매개 변수

pdispExternal
IDispatch 인터페이스입니다.

CDHtmlDialog::SetHostFlags

호스트 UI 플래그를 설정합니다.

void SetHostFlags(DWORD dwFlags);

매개 변수

dwFlags
가능한 값은 Windows SDK를 참조 DOCHOSTUIFLAG 하세요.

CDHtmlDialog::ShowContextMenu

상황에 맞는 메뉴가 표시될 때 호출됩니다.

STDMETHOD(ShowContextMenu)(
    DWORD dwID,
    POINT* ppt,
    IUnknown* pcmdtReserved,
    IDispatch* pdispReserved);

매개 변수

dwID
Windows SDK에서 IDocHostUIHandler::ShowContextMenu 참조 dwID 하세요.

ppt
Windows SDK에서 IDocHostUIHandler::ShowContextMenu 참조 ppt 하세요.

pcmdtReserved
Windows SDK에서 IDocHostUIHandler::ShowContextMenu 참조 pcmdtReserved 하세요.

pdispReserved
Windows SDK에서 IDocHostUIHandler::ShowContextMenu 참조 pdispReserved 하세요.

Return Value

S_FALSE을(를) 반환합니다.

설명

이 멤버 함수는 CDHtmlDialog Windows SDK에 설명된 대로 구현 IDocHostUIHandler::ShowContextMenu입니다.

CDHtmlDialog::ShowUI

호스트의 UI를 표시합니다.

STDMETHOD(ShowUI)(
    DWORD dwID,
    IOleInPlaceActiveObject* pActiveObject,
    IOleCommandTarget* pCommandTarget,
    IOleInPlaceFrame* pFrame,
    IOleInPlaceUIWindow* pDoc);

매개 변수

dwID
Windows SDK에서 IDocHostUIHandler::ShowUI 참조 dwID 하세요.

pActiveObject
Windows SDK에서 IDocHostUIHandler::ShowUI 참조 pActiveObject 하세요.

pCommandTarget
Windows SDK에서 IDocHostUIHandler::ShowUI 참조 pCommandTarget 하세요.

pFrame
Windows SDK에서 IDocHostUIHandler::ShowUI 참조 pFrame 하세요.

pDoc
Windows SDK에서 IDocHostUIHandler::ShowUI 참조 pDoc 하세요.

Return Value

S_FALSE을(를) 반환합니다.

설명

이 멤버 함수는 CDHtmlDialog Windows SDK에 설명된 대로 구현 IDocHostUIHandler::ShowUI입니다.

CDHtmlDialog::TranslateAccelerator

메뉴 가속기 키 메시지를 처리하기 위해 호출됩니다.

STDMETHOD(TranslateAccelerator)(
    LPMSG lpMsg,
    const GUID* pguidCmdGroup,
    DWORD nCmdID);

매개 변수

lpMsg
Windows SDK에서 IDocHostUIHandler::TranslateAccelerator 참조 lpMsg 하세요.

pguidCmdGroup
Windows SDK에서 IDocHostUIHandler::TranslateAccelerator 참조 pguidCmdGroup 하세요.

nCmdID
Windows SDK에서 IDocHostUIHandler::TranslateAccelerator 참조 nCmdID 하세요.

Return Value

S_FALSE을(를) 반환합니다.

설명

이 멤버 함수는 CDHtmlDialog Windows SDK에 설명된 대로 구현 IDocHostUIHandler::TranslateAccelerator입니다.

CDHtmlDialog::TranslateUrl

로드할 URL을 수정하기 위해 호출됩니다.

STDMETHOD(TranslateUrl)(
    DWORD dwTranslate,
    OLECHAR* pchURLIn,
    OLECHAR** ppchURLOut);

매개 변수

dwTranslate
Windows SDK에서 IDocHostUIHandler::TranslateUrl 참조 dwTranslate 하세요.

pchURLIn
Windows SDK에서 IDocHostUIHandler::TranslateUrl 참조 pchURLIn 하세요.

ppchURLOut
Windows SDK에서 IDocHostUIHandler::TranslateUrl 참조 ppchURLOut 하세요.

Return Value

S_FALSE을(를) 반환합니다.

설명

이 멤버 함수는 CDHtmlDialog Windows SDK에 설명된 대로 구현 IDocHostUIHandler::TranslateUrl입니다.

CDHtmlDialog::UpdateUI

호스트에 명령 상태가 변경되었음을 알리기 위해 호출되었습니다.

STDMETHOD(UpdateUI)(void);

Return Value

E_NOTIMPL을(를) 반환합니다.

설명

이 멤버 함수는 CDHtmlDialog Windows SDK에 설명된 대로 구현 IDocHostUIHandler::UpdateUI입니다.

참고 항목

MFC 샘플 DHtmlExplore
DDX_DHtml 도우미 매크로
계층 구조 차트