Share via


COleControlSite 클래스

사용자 지정 클라이언트 측 컨트롤 인터페이스를 지원합니다.

구문

class COleControlSite : public CCmdTarget

멤버

공용 생성자

속성 설명
COleControlSite::COleControlSite COleControlSite 개체를 생성합니다.

공용 메서드

이름 설명
COleControlSite::BindDefaultProperty 호스트된 컨트롤의 기본 속성을 데이터 원본에 바인딩합니다.
COleControlSite::BindProperty 호스트된 컨트롤의 속성을 데이터 원본에 바인딩합니다.
COleControlSite::CreateControl 호스트된 ActiveX 컨트롤을 만듭니다.
COleControlSite::D estroyControl 호스트된 컨트롤을 삭제합니다.
COleControlSite::D oVerb 호스트된 컨트롤의 특정 동사를 실행합니다.
COleControlSite::EnableDSC 컨트롤 사이트에 대한 데이터 소싱을 사용하도록 설정합니다.
COleControlSite::EnableWindow 컨트롤 사이트를 사용하도록 설정합니다.
COleControlSite::FreezeEvents 컨트롤 사이트에서 이벤트를 허용하는지 지정합니다.
COleControlSite::GetDefBtnCode 호스트된 컨트롤의 기본 단추 코드를 검색합니다.
COleControlSite::GetDlgCtrlID 컨트롤의 식별자를 검색합니다.
COleControlSite::GetEventIID 호스트된 컨트롤에 대한 이벤트 인터페이스의 ID를 검색합니다.
COleControlSite::GetExStyle 컨트롤 사이트의 확장 스타일을 검색합니다.
COleControlSite::GetProperty 호스트된 컨트롤의 특정 속성을 검색합니다.
COleControlSite::GetStyle 컨트롤 사이트의 스타일을 검색합니다.
COleControlSite::GetWindowText 호스트된 컨트롤의 텍스트를 검색합니다.
COleControlSite::InvokeHelper 호스트된 컨트롤의 특정 메서드를 호출합니다.
COleControlSite::InvokeHelperV 인수의 변수 목록을 사용하여 호스트된 컨트롤의 특정 메서드를 호출합니다.
COleControlSite::IsDefaultButton 컨트롤이 창의 기본 단추인지 여부를 확인합니다.
COleControlSite::IsWindowEnabled 컨트롤 사이트의 표시 상태를 확인합니다.
COleControlSite::ModifyStyle 컨트롤 사이트의 현재 확장 스타일을 수정합니다.
COleControlSite::ModifyStyleEx 컨트롤 사이트의 현재 스타일을 수정합니다.
COleControlSite::MoveWindow 컨트롤 사이트의 위치를 변경합니다.
COleControlSite::QuickActivate 호스트된 컨트롤을 빠르게 활성화합니다.
COleControlSite::금고SetProperty 예외를 throw하지 않고 컨트롤의 속성 또는 메서드를 설정합니다.
COleControlSite::SetDefaultButton 창에서 기본 단추를 설정합니다.
COleControlSite::SetDlgCtrlID 컨트롤의 식별자를 검색합니다.
COleControlSite::SetFocus 포커스를 컨트롤 사이트로 설정합니다.
COleControlSite::SetProperty 호스트된 컨트롤의 특정 속성을 설정합니다.
COleControlSite::SetPropertyV 인수의 변수 목록을 사용하여 호스트된 컨트롤의 특정 속성을 설정합니다.
COleControlSite::SetWindowPos 컨트롤 사이트의 위치를 설정합니다.
COleControlSite::SetWindowText 호스트된 컨트롤의 텍스트를 설정합니다.
COleControlSite::ShowWindow 컨트롤 사이트를 표시하거나 숨깁니다.

보호된 메서드

속성 설명
COleControlSite::GetControlInfo 호스트된 컨트롤에 대한 키보드 정보 및 니모닉을 검색합니다.

공용 데이터 멤버

이름 설명
COleControlSite::m_bIsWindowless 호스트된 컨트롤이 창 없는 컨트롤인지 확인합니다.
COleControlSite::m_ctlInfo 컨트롤의 키보드 처리에 대한 정보를 포함합니다.
COleControlSite::m_dwEventSink 컨트롤 연결 지점의 쿠키입니다.
COleControlSite::m_dwMiscStatus 호스트된 컨트롤의 기타 상태입니다.
COleControlSite::m_dwPropNotifySink IPropertyNotifySink 컨트롤의 쿠키입니다.
COleControlSite::m_dwStyle 호스트된 컨트롤의 스타일입니다.
COleControlSite::m_hWnd 컨트롤 사이트의 핸들입니다.
COleControlSite::m_iidEvents 호스트된 컨트롤에 대한 이벤트 인터페이스의 ID입니다.
COleControlSite::m_nID 호스트된 컨트롤의 ID입니다.
COleControlSite::m_pActiveObject 호스트된 컨트롤의 IOleInPlaceActiveObject 개체에 대한 포인터입니다.
COleControlSite::m_pCtrlCont 호스트된 컨트롤의 컨테이너입니다.
COleControlSite::m_pInPlaceObject 호스트된 컨트롤의 IOleInPlaceObject 개체에 대한 포인터입니다.
COleControlSite::m_pObject 컨트롤의 인터페이스에 대한 IOleObjectInterface 포인터입니다.
COleControlSite::m_pWindowlessObject 컨트롤의 인터페이스에 대한 IOleInPlaceObjectWindowless 포인터입니다.
COleControlSite::m_pWndCtrl 호스트된 컨트롤의 창 개체에 대한 포인터입니다.
COleControlSite::m_rect 컨트롤 사이트의 차원입니다.

설명

이 지원은 포함된 ActiveX 컨트롤이 표시 사이트의 위치 및 범위, 모니커, 사용자 인터페이스, 앰비언트 속성 및 컨테이너에서 제공하는 기타 리소스에 대한 정보를 가져오는 기본 수단입니다. COleControlSite에서는 IOleControlSite, IOleInPlaceSite, IOleClientSite, IPropertyNotifySink, IBoundObjectSite, INotifyDBEventsIRowSetNotify 인터페이스를 완전히 구현합니다. 또한 IDispatch 인터페이스(앰비언트 속성 및 이벤트 싱크에 대한 지원 제공)도 구현됩니다.

를 사용하여 COleControlSiteActiveX 컨트롤 사이트를 만들려면 .에서 COleControlSite클래스를 파생합니다. CWnd컨테이너에 대한 파생 클래스(예: 대화 상자)에서 함수를 재정의합니다CWnd::CreateControlSite.

상속 계층 구조

CObject

CCmdTarget

COleControlSite

요구 사항

헤더: afxocc.h

COleControlSite::BindDefaultProperty

형식 라이브러리에 표시된 대로 호출 개체의 기본 단순 바인딩 속성을 데이터 원본 컨트롤의 DataSource, UserName, Password 및 SQL 속성으로 정의된 기본 커서에 바인딩합니다.

virtual void BindDefaultProperty(
    DISPID dwDispID,
    VARTYPE vtProp,
    LPCTSTR szFieldName,
    CWnd* pDSCWnd);

매개 변수

dwDispID
데이터 소스 컨트롤에 바인딩할 데이터 바인딩된 컨트롤에 있는 속성의 DISPID를 지정합니다.

vtProp
바인딩할 속성의 형식(예: VT_BSTR, VT_VARIANT 등)을 지정합니다.

szFieldName
속성이 바인딩될 데이터 소스 컨트롤에서 제공하는 커서에 있는 열의 이름을 지정합니다.

pDSCWnd
속성이 CWnd바인딩될 데이터 소스 컨트롤을 호스트하는 파생 개체에 대한 포인터입니다.

설명

이 함수를 호출하는 개체는 CWnd 데이터 바인딩된 컨트롤이어야 합니다.

COleControlSite::BindProperty

형식 라이브러리에 표시된 것처럼 호출 개체의 단순 바인딩된 속성을 데이터 소스 컨트롤의 DataSource, UserName, Password 및 SQL 속성으로 정의된 기본 커서에 바인딩합니다.

virtual void BindProperty(
    DISPID dwDispId,
    CWnd* pWndDSC);

매개 변수

dwDispId
데이터 소스 컨트롤에 바인딩할 데이터 바인딩된 컨트롤에 있는 속성의 DISPID를 지정합니다.

pWndDSC
속성이 CWnd바인딩될 데이터 소스 컨트롤을 호스트하는 파생 개체에 대한 포인터입니다.

설명

이 함수를 호출하는 개체는 CWnd 데이터 바인딩된 컨트롤이어야 합니다.

COleControlSite::COleControlSite

COleControlSite 개체를 생성합니다.

explicit COleControlSite(COleControlContainer* pCtrlCont);

매개 변수

pCtrlCont
컨트롤의 컨테이너(AtiveX 컨트롤을 호스트하는 창을 나타낸)에 대한 포인터입니다.

설명

이 함수는 COccManager::CreateContainer 함수에 의해 호출됩니다. 컨테이너 만들기를 사용자 지정하는 방법에 대한 자세한 내용은 COccManager::CreateSite를 참조하세요.

COleControlSite::CreateControl

개체에서 호스트하는 ActiveX 컨트롤을 COleControlSite 만듭니다.

virtual HRESULT CreateControl(
    CWnd* pWndCtrl,
    REFCLSID clsid,
    LPCTSTR lpszWindowName,
    DWORD dwStyle,
    const RECT& rect,
    UINT nID,
    CFile* pPersist = NULL,
    BOOL bStorage = FALSE,
    BSTR bstrLicKey = NULL);

virtual HRESULT CreateControl(
    CWnd* pWndCtrl,
    REFCLSID clsid,
    LPCTSTR lpszWindowName,
    DWORD dwStyle,
    const POINT* ppt,
    const SIZE* psize,
    UINT nID,
    CFile* pPersist = NULL,
    BOOL bStorage = FALSE,
    BSTR bstrLicKey = NULL);

매개 변수

pWndCtrl
컨트롤을 나타내는 창 개체에 대한 포인터입니다.

clsid
컨트롤의 고유 클래스 ID입니다.

lpszWindowName
컨트롤에 표시할 텍스트에 대한 포인터입니다. winodw의 Caption 또는 Text 속성 값(있는 경우)을 설정합니다.

dwStyle
Windows 스타일. 사용 가능한 스타일은 주의 섹션 아래에 나열됩니다 .

rect
컨트롤의 크기와 위치를 지정합니다. 개체 또는 RECT 구조체 CRect 일 수 있습니다.

nID
컨트롤의 자식 창 ID를 지정합니다.

pPersist
컨트롤의 CFile 영구 상태를 포함하는 포인터입니다. 기본값은 NULL로, 영구 스토리지에서 상태를 복원하지 않고 컨트롤이 자체를 초기화함을 나타냅니다. NULL이 아닌 경우 스트림 또는 스토리지 형식으로 컨트롤의 영구 데이터를 포함하는 파생 개체에 대한 포인터 CFile여야 합니다. 이 데이터는 클라이언트의 이전 활성화에 저장되었을 수 있습니다. 다른 CFile 데이터를 포함할 수 있지만 호출 CreateControl시 영구 데이터의 첫 번째 바이트로 설정된 읽기-쓰기 포인터가 있어야 합니다.

bStorage
pPersist의 데이터를 데이터IStorageIStream 해석해야 하는지 여부를 나타냅니다. pPersist의 데이터가 스토리지인 경우 bStorage는 TRUE여야 합니다. pPersist의 데이터가 스트림인 경우 bStorage는 FALSE여야 합니다. 기본값은 FALSE입니다.

bstrLicKey
선택적 라이선스 키 데이터입니다. 이 데이터는 런타임 라이선스 키가 필요한 컨트롤을 만드는 데만 필요합니다. 컨트롤이 라이선스를 지원하는 경우 컨트롤을 만들 수 있도록 라이선스 키를 제공해야 합니다. 기본값은 NULL입니다.

ppt
컨트롤의 POINT 왼쪽 위 모퉁이를 포함하는 구조체에 대한 포인터입니다. 컨트롤의 크기는 psize에 따라 결정됩니다. pptpsize 값은 컨트롤의 크기와 위치를 지정하는 선택적 메서드입니다.

psize
컨트롤의 크기를 포함하는 구조체에 대한 포인터 SIZE 입니다. 왼쪽 위 모서리는 ppt 값 에 따라 결정됩니다. pptpsize 값은 컨트롤의 크기와 위치를 지정하는 선택적 메서드입니다.

Return Value

표준 HRESULT 값입니다.

설명

Windows dwStyle 플래그의 하위 집합만 다음에서 CreateControl지원됩니다.

  • WS_VISIBLE 처음에 표시되는 창을 만듭니다. 일반 창과 같이 컨트롤을 즉시 표시하려면 필수입니다.

  • WS_DISABLED 처음에 사용하지 않도록 설정된 창을 만듭니다. 사용하지 않도록 설정된 창은 사용자로부터 입력을 받을 수 없습니다. 컨트롤에 Enabled 속성이 있는 경우 설정할 수 있습니다.

  • WS_BORDER 얇은 테두리가 있는 창을 만듭니다. 컨트롤에 BorderStyle 속성이 있는 경우 설정할 수 있습니다.

  • WS_GROUP 컨트롤 그룹의 첫 번째 컨트롤을 지정합니다. 사용자는 방향 키를 사용하여 그룹의 한 컨트롤에서 다음 컨트롤로 키보드 포커스를 변경할 수 있습니다. 첫 번째 컨트롤 이후의 WS_GROUP 스타일로 정의된 모든 컨트롤은 동일한 그룹에 속합니다. WS_GROUP 스타일을 사용하는 다음 컨트롤은 그룹을 종료하고 다음 그룹을 시작합니다.

  • WS_TABSTOP 사용자가 TAB 키를 누를 때 키보드 포커스를 받을 수 있는 컨트롤을 지정합니다. TAB 키를 누르면 키보드 포커스가 WS_TABSTOP 스타일의 다음 컨트롤로 바뀝니다.

두 번째 오버로드를 사용하여 기본 크기 컨트롤을 만듭니다.

COleControlSite::D estroyControl

개체를 COleControlSite 삭제합니다.

virtual BOOL DestroyControl();

Return Value

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

설명

완료되면 개체가 메모리에서 해제되고 개체에 대한 포인터가 더 이상 유효하지 않습니다.

COleControlSite::D oVerb

지정된 동사를 실행합니다.

virtual HRESULT DoVerb(
    LONG nVerb,
    LPMSG lpMsg = NULL);

매개 변수

nVerb
실행할 동사를 지정합니다. 다음 중 하나를 포함할 수 있습니다.

의미 기호
0 기본 동사 OLEIVERB_PRIMARY
-1 보조 동사 (없음)
1 편집할 개체를 표시합니다. OLEIVERB_SHOW
-2 별도의 창에서 항목을 편집합니다. OLEIVERB_OPEN
-3 개체를 숨깁니다. OLEIVERB_HIDE
-4 현재 위치에서 컨트롤을 활성화합니다. OLEIVERB_UIACTIVATE
5- 추가 사용자 인터페이스 요소 없이 현재 위치에서 컨트롤을 활성화합니다. OLEIVERB_INPLACEACTIVATE
-7 컨트롤의 속성을 표시합니다. OLEIVERB_PROPERTIES

lpMsg
항목이 활성화된 메시지에 대한 포인터입니다.

Return Value

표준 HRESULT 값입니다.

설명

이 함수는 컨트롤의 IOleObject 인터페이스를 통해 직접 호출하여 지정된 동사를 실행합니다. 이 함수 호출의 결과로 예외가 throw되면 HRESULT 오류 코드가 반환됩니다.

자세한 내용은 Windows SDK의 IOleObject::D oVerb 을 참조하세요.

COleControlSite::EnableDSC

컨트롤 사이트에 대한 데이터 소싱을 사용하도록 설정합니다.

virtual void EnableDSC();

설명

제어 사이트에 대한 데이터 소싱을 사용하도록 설정하고 초기화하기 위해 프레임워크에서 호출됩니다. 사용자 지정된 동작을 제공하도록 이 함수를 재정의합니다.

COleControlSite::EnableWindow

컨트롤 사이트에 대한 마우스 및 키보드 입력을 사용하거나 사용하지 않도록 설정합니다.

virtual BOOL EnableWindow(BOOL bEnable);

매개 변수

bEnable
창을 사용하거나 사용하지 않도록 설정할지 여부를 지정합니다. 창 입력을 사용하도록 설정하려면 TRUE이고, 그렇지 않으면 FALSE입니다.

Return Value

창이 이전에 비활성화되었으면 0이 아니고, 그렇지 않으면 0입니다.

COleControlSite::FreezeEvents

컨트롤 사이트에서 발생한 이벤트를 컨트롤 사이트에서 처리하거나 무시할지 여부를 지정합니다.

void FreezeEvents(BOOL bFreeze);

매개 변수

bFreeze
컨트롤 사이트에서 이벤트 수락을 중지하려는지를 지정합니다. 컨트롤이 이벤트를 수락하지 않는 경우 0이 아닙니다. 그렇지 않으면 0입니다.

설명

bFreeze가 TRUE이면 컨트롤 사이트에서 이벤트 발생을 중지하도록 컨트롤에 요청합니다. bFreeze가 FALSE이면 컨트롤 사이트에서 이벤트 발생을 계속하도록 컨트롤에 요청합니다.

참고 항목

컨트롤 사이트에서 요청하는 경우 이벤트 발생을 중지할 필요가 없습니다. 계속 실행할 수 있지만 모든 후속 이벤트는 제어 사이트에서 무시됩니다.

COleControlSite::GetControlInfo

컨트롤의 키보드 니모닉 및 키보드 동작에 대한 정보를 검색합니다.

void GetControlInfo();

설명

정보는 COleControlSite::m_ctlInfo 저장됩니다.

COleControlSite::GetDefBtnCode

컨트롤이 기본 푸시 단추인지 여부를 확인합니다.

DWORD GetDefBtnCode();

Return Value

다음 값 중 하나일 수 있습니다.

  • DLGC_DEFPUSHBUTTON 컨트롤은 대화 상자의 기본 단추입니다.

  • DLGC_UNDEFPUSHBUTTON 컨트롤은 대화 상자의 기본 단추가 아닙니다.

  • 0 컨트롤은 단추가 아닙니다.

COleControlSite::GetDlgCtrlID

컨트롤의 식별자를 검색합니다.

virtual int GetDlgCtrlID() const;

Return Value

컨트롤의 대화 상자 항목 식별자입니다.

COleControlSite::GetEventIID

컨트롤의 기본 이벤트 인터페이스에 대한 포인터를 검색합니다.

BOOL GetEventIID(IID* piid);

매개 변수

piid
인터페이스 ID에 대한 포인터입니다.

Return Value

성공하면 0이 아니고, 그렇지 않으면 0입니다. 성공 하면 piid 에는 컨트롤의 기본 이벤트 인터페이스에 대한 인터페이스 ID가 포함됩니다.

COleControlSite::GetExStyle

창의 확장 스타일을 검색합니다.

virtual DWORD GetExStyle() const;

Return Value

컨트롤 창의 확장 스타일입니다.

설명

일반 스타일을 검색하려면 COleControlSite::GetStyle을 호출합니다.

COleControlSite::GetProperty

dwDispID지정된 컨트롤 속성을 가져옵니다.

virtual void GetProperty(
    DISPID dwDispID,
    VARTYPE vtProp,
    void* pvProp) const;

매개 변수

dwDispID
검색할 컨트롤의 기본 IDispatch 인터페이스에 있는 속성의 디스패치 ID를 식별합니다.

vtProp
검색할 속성의 형식을 지정합니다. 가능한 값에 대해서는 COleDispatchDriver::InvokeHelper의 설명 섹션을 참조하세요.

pvProp
속성 값을 받을 변수의 주소입니다. vtProp에서 지정한 형식과 일치해야 합니다.

설명

값은 pvProp을 통해 반환됩니다.

COleControlSite::GetStyle

컨트롤 사이트의 스타일을 검색합니다.

virtual DWORD GetStyle() const;

Return Value

창의 스타일입니다.

설명

가능한 값 목록은 Windows 스타일을 참조 하세요. 컨트롤 사이트의 확장 스타일을 검색하려면 COleControlSite::GetExStyle을 호출합니다.

COleControlSite::GetWindowText

컨트롤의 현재 텍스트를 검색합니다.

virtual void GetWindowText(CString& str) const;

매개 변수

str
컨트롤의 CString 현재 텍스트를 포함하는 개체에 대한 참조입니다.

설명

컨트롤이 Caption stock 속성을 지원하는 경우 이 값이 반환됩니다. Caption stock 속성이 지원되지 않으면 Text 속성의 값이 반환됩니다.

COleControlSite::InvokeHelper

wFlags로 지정된 컨텍스트에서 dwDispID로 지정된 메서드 또는 속성을 호출합니다.

virtual void AFX_CDECL InvokeHelper(
    DISPID dwDispID,
    WORD wFlags,
    VARTYPE vtRet,
    void* pvRet,
    const BYTE* pbParamInfo, ...);

매개 변수

dwDispID
호출할 컨트롤의 인터페이스에 있는 속성 또는 메서드의 IDispatch 디스패치 ID를 식별합니다.

wFlags
IDispatch::Invoke호출의 컨텍스트를 설명하는 플래그입니다. 가능한 wFlags 값은 Windows SDK를 참조 IDispatch::Invoke 하세요.

vtRet
반환 값 형식을 지정합니다. 가능한 값에 대해서는 COleDispatchDriver::InvokeHelper의 설명 섹션을 참조하세요.

pvRet
속성 값이나 반환 값을 받을 변수의 주소입니다. vtRet로 지정된 형식과 일치해야 합니다.

pbParamInfo
pbParamInfo 다음 매개 변수의 형식을 지정하는 null로 끝나는 바이트 문자열에 대한 포인터입니다. 가능한 값에 대해서는 COleDispatchDriver::InvokeHelper의 설명 섹션을 참조하세요.

...
pbParamInfo지정된 형식의 매개 변수 변수 목록입니다.

설명

pbParamInfo 매개 변수는 메서드 또는 속성에 전달되는 매개 변수의 형식을 지정합니다. 인수의 변수 목록은 구문 선언에서 ... 로 표시됩니다.

이 함수는 매개 변수를 VARIANTARG 값으로 변환한 다음 컨트롤에서 IDispatch::Invoke 메서드를 호출합니다. IDispatch::Invoke 호출에 실패하면 이 함수가 예외를 throw합니다. 반환 IDispatch::Invoke 된 상태 코드가 있으면 이 함수는 DISP_E_EXCEPTION개체를 COleDispatchException throw하고, 그렇지 않으면 을 throw합니다COleException.

COleControlSite::InvokeHelperV

wFlags로 지정된 컨텍스트에서 dwDispID로 지정된 메서드 또는 속성을 호출합니다.

virtual void InvokeHelperV(
    DISPID dwDispID,
    WORD wFlags,
    VARTYPE vtRet,
    void* pvRet,
    const BYTE* pbParamInfo,
    va_list argList);

매개 변수

dwDispID
호출할 컨트롤의 인터페이스에 있는 속성 또는 메서드의 IDispatch 디스패치 ID를 식별합니다.

wFlags
IDispatch::Invoke호출의 컨텍스트를 설명하는 플래그입니다.

vtRet
반환 값 형식을 지정합니다. 가능한 값에 대해서는 COleDispatchDriver::InvokeHelper의 설명 섹션을 참조하세요.

pvRet
속성 값이나 반환 값을 받을 변수의 주소입니다. vtRet로 지정된 형식과 일치해야 합니다.

pbParamInfo
pbParamInfo 다음 매개 변수의 형식을 지정하는 null로 끝나는 바이트 문자열에 대한 포인터입니다. 가능한 값에 대해서는 COleDispatchDriver::InvokeHelper의 설명 섹션을 참조하세요.

Arglist
변수 인수 목록에 대한 포인터입니다.

설명

pbParamInfo 매개 변수는 메서드 또는 속성에 전달되는 매개 변수의 형식을 지정합니다. 호출되는 메서드 또는 속성에 대한 추가 매개 변수는 va_list 매개 변수를 사용하여 전달할 수 있습니다.

일반적으로 이 함수는 .에 의해 COleControlSite::InvokeHelper호출됩니다.

COleControlSite::IsDefaultButton

컨트롤이 기본 단추인지 여부를 확인합니다.

BOOL IsDefaultButton();

Return Value

컨트롤이 창의 기본 단추이면 0이 아니고, 그렇지 않으면 0입니다.

COleControlSite::IsWindowEnabled

컨트롤 사이트를 사용할 수 있는지 여부를 확인합니다.

virtual BOOL IsWindowEnabled() const;

Return Value

컨트롤이 활성화되면 0이 아니고, 그렇지 않으면 0입니다.

설명

값은 컨트롤의 사용 주식 속성에서 검색됩니다.

COleControlSite::m_bIsWindowless

개체가 창 없는 컨트롤인지 여부를 확인합니다.

BOOL m_bIsWindowless;

설명

컨트롤에 창이 없으면 0이 아니고, 그렇지 않으면 0이 됩니다.

COleControlSite::m_ctlInfo

컨트롤에서 키보드 입력을 처리하는 방법에 대한 정보입니다.

CONTROLINFO m_ctlInfo;

설명

이 정보는 CONTROLINFO 구조체에 저장됩니다.

COleControlSite::m_dwEventSink

컨트롤의 이벤트 싱크에서 연결 지점의 쿠키를 포함합니다.

DWORD m_dwEventSink;

COleControlSite::m_dwMiscStatus

컨트롤에 대한 기타 정보를 포함합니다.

DWORD m_dwMiscStatus;

설명

자세한 내용은 Windows SDK의 OLEMISC를 참조하세요.

COleControlSite::m_dwPropNotifySink

IPropertyNotifySink 쿠키를 포함합니다.

DWORD m_dwPropNotifySink;

COleControlSite::m_dwStyle

컨트롤의 창 스타일을 포함합니다.

DWORD m_dwStyle;

COleControlSite::m_hWnd

컨트롤의 HWND를 포함하거나, 컨트롤이 창이 없는 경우 NULL을 포함합니다.

HWND m_hWnd;

COleControlSite::m_iidEvents

컨트롤의 기본 이벤트 싱크 인터페이스의 인터페이스 ID를 포함합니다.

IID m_iidEvents;

COleControlSite::m_nID

컨트롤의 대화 상자 항목 ID를 포함합니다.

UINT m_nID;

COleControlSite::m_pActiveObject

컨트롤의 IOleInPlaceActiveObject 인터페이스를 포함합니다.

LPOLEINPLACEACTIVEOBJECT m_pActiveObject;

COleControlSite::m_pCtrlCont

컨트롤의 컨테이너(폼을 나타낸)를 포함합니다.

COleControlContainer* m_pCtrlCont;

COleControlSite::m_pInPlaceObject

컨트롤의 IOleInPlaceObjectIOleInPlaceObject 인터페이스를 포함합니다.

LPOLEINPLACEOBJECT m_pInPlaceObject;

COleControlSite::m_pObject

컨트롤의 IOleObjectInterface 인터페이스를 포함합니다.

LPOLEOBJECT m_pObject;

COleControlSite::m_pWindowlessObject

컨트롤의 IOleInPlaceObjectWindowlessIOleInPlaceObjectWindowless 인터페이스를 포함합니다.

IOleInPlaceObjectWindowless* m_pWindowlessObject;

COleControlSite::m_pWndCtrl

컨트롤 자체를 나타내는 개체에 CWnd 대한 포인터를 포함합니다.

CWnd* m_pWndCtrl;

COleControlSite::m_rect

컨테이너 창을 기준으로 컨트롤의 범위를 포함합니다.

CRect m_rect;

COleControlSite::ModifyStyle

컨트롤의 스타일을 수정합니다.

virtual BOOL ModifyStyle(
    DWORD dwRemove,
    DWORD dwAdd,
    UINT nFlags);

매개 변수

dwRemove
현재 창 스타일에서 제거할 스타일입니다.

dwAdd
현재 창 스타일에서 추가할 스타일입니다.

nFlags
창 위치 지정 플래그입니다. 가능한 값 목록은 Windows SDK의 SetWindowPos 함수를 참조하세요.

Return Value

스타일이 변경되면 0이 아니고, 그렇지 않으면 0입니다.

설명

컨트롤의 stock Enabled 속성은 WS_DISABLED 설정과 일치하도록 수정됩니다. 컨트롤의 stock Border Style 속성은 요청된 WS_BORDER 설정과 일치하도록 수정됩니다. 다른 모든 스타일은 컨트롤의 창 핸들(있는 경우)에 직접 적용됩니다.

컨트롤의 창 스타일을 수정합니다. 추가하거나 제거할 스타일은 비트 OR(|) 연산자를 사용하여 결합할 수 있습니다. 사용 가능한 창 스타일에 대한 자세한 내용은 Windows SDK의 CreateWindow 함수를 참조하세요.

nFlags가 0 ModifyStyle 이 아닌 경우 Win32 함수SetWindowPos를 호출하고 nFlag를 다음 네 개의 플래그와 결합하여 창을 다시 그립니다.

  • SWP_NOSIZE 현재 크기를 유지합니다.

  • SWP_NOMOVE 현재 위치를 유지합니다.

  • SWP_NOZORDER 현재 Z 순서를 유지합니다.

  • SWP_NOACTIVATE 창을 활성화하지 않습니다.

창의 확장 스타일을 수정하려면 ModifyStyleEx를 호출합니다.

COleControlSite::ModifyStyleEx

컨트롤의 확장 스타일을 수정합니다.

virtual BOOL ModifyStyleEx(
    DWORD dwRemove,
    DWORD dwAdd,
    UINT nFlags);

매개 변수

dwRemove
현재 창 스타일에서 제거할 확장 스타일입니다.

dwAdd
현재 창 스타일에서 추가할 확장 스타일입니다.

nFlags
창 위치 지정 플래그입니다. 가능한 값 목록은 Windows SDK의 SetWindowPos 함수를 참조하세요.

Return Value

스타일이 변경되면 0이 아니고, 그렇지 않으면 0입니다.

설명

컨트롤의 stock Appearance 속성은 WS_EX_CLIENTEDGE 설정과 일치하도록 수정됩니다. 다른 모든 확장 창 스타일은 컨트롤의 창 핸들에 직접 적용됩니다(있는 경우).

컨트롤 사이트 개체의 창 확장 스타일을 수정합니다. 추가하거나 제거할 스타일은 비트 OR(|) 연산자를 사용하여 결합할 수 있습니다. 사용 가능한 창 스타일에 대한 자세한 내용은 Windows SDK의 CreateWindowEx 함수를 참조하세요.

nFlags가 0 ModifyStyleEx 이 아닌 경우 Win32 함수SetWindowPos를 호출하고 nFlag를 다음 네 개의 플래그와 결합하여 창을 다시 그립니다.

  • SWP_NOSIZE 현재 크기를 유지합니다.

  • SWP_NOMOVE 현재 위치를 유지합니다.

  • SWP_NOZORDER 현재 Z 순서를 유지합니다.

  • SWP_NOACTIVATE 창을 활성화하지 않습니다.

창의 확장 스타일을 수정하려면 ModifyStyle을 호출합니다.

COleControlSite::MoveWindow

컨트롤의 위치를 변경합니다.

virtual void MoveWindow(
    int x,
    int y,
    int nWidth,
    int nHeight);

매개 변수

x
창 왼쪽의 새 위치입니다.

y
창 위쪽의 새 위치입니다.

nWidth
창의 새 너비

nHeight
창의 새 높이입니다.

COleControlSite::QuickActivate

포함된 컨트롤을 빠르게 활성화합니다.

virtual BOOL QuickActivate();

Return Value

컨트롤 사이트가 활성화되었으면 0이 아니고, 그렇지 않으면 0입니다.

설명

이 함수는 사용자가 컨트롤의 생성 프로세스를 재정의하는 경우에만 호출해야 합니다.

빠른 활성화가 발생한 후에 메서드 IPersist*::LoadIPersist*::InitNew 호출해야 합니다. 컨트롤은 빠른 활성화 중에 컨테이너의 싱크에 대한 연결을 설정해야 합니다. 그러나 이러한 연결은 호출될 때까지 IPersist*::LoadIPersist*::InitNew 라이브가 아닙니다.

COleControlSite::금고SetProperty

dwDispID지정된 컨트롤 속성을 설정합니다.

virtual BOOL AFX_CDECL SafeSetProperty(
    DISPID dwDispID,
    VARTYPE vtProp, ...);

매개 변수

dwDispID
설정할 컨트롤의 인터페이스에 있는 속성 또는 메서드의 IDispatch 디스패치 ID를 식별합니다.

vtProp
설정할 속성의 형식을 지정합니다. 가능한 값에 대해서는 COleDispatchDriver::InvokeHelper의 설명 섹션을 참조하세요.

...
vtProp에서 지정한 형식의 단일 매개 변수입니다.

Return Value

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

설명

참고 항목

존재하지 않는 속성을 설정하는 것과 같이 오류가 발생하는 경우와 SetPropertyV달리 SetProperty 예외가 throw되지 않습니다.

COleControlSite::SetDefaultButton

컨트롤을 기본 단추로 설정합니다.

void SetDefaultButton(BOOL bDefault);

매개 변수

bDefault
컨트롤이 기본 단추가 되어야 하는 경우 0이 아닌 경우 그렇지 않으면 0입니다.

설명

참고 항목

컨트롤에는 OLEMISC_ACTSLIKEBUTTON 상태 비트 집합이 있어야 합니다.

COleControlSite::SetDlgCtrlID

컨트롤의 대화 상자 항목 식별자 값을 변경합니다.

virtual int SetDlgCtrlID(int nID);

매개 변수

nID
새 식별자 값입니다.

Return Value

성공하면 창의 이전 대화 상자 항목 식별자입니다. 그렇지 않으면 0입니다.

설명

COleControlSite::SetFocus

컨트롤에 포커스를 설정합니다.

virtual CWnd* SetFocus();
virtual CWnd* SetFocus(LPMSG lpmsg);

매개 변수

lpmsg
MSG 구조체에 대한 포인터입니다. 이 구조에는 현재 컨트롤 사이트에 포함된 컨트롤에 SetFocus 대한 요청을 트리거하는 Windows 메시지가 포함됩니다.

Return Value

이전에 포커스가 있었던 창에 대한 포인터입니다.

COleControlSite::SetProperty

dwDispID지정된 컨트롤 속성을 설정합니다.

virtual void AFX_CDECL SetProperty(
    DISPID dwDispID,
    VARTYPE vtProp, ...);

매개 변수

dwDispID
설정할 컨트롤의 인터페이스에 있는 속성 또는 메서드의 IDispatch 디스패치 ID를 식별합니다.

vtProp
설정할 속성의 형식을 지정합니다. 가능한 값에 대해서는 COleDispatchDriver::InvokeHelper의 설명 섹션을 참조하세요.

...
vtProp에서 지정한 형식의 단일 매개 변수입니다.

설명

SetProperty 오류가 발생하면 예외가 throw됩니다.

예외 유형은 속성 또는 메서드를 설정하려는 시도의 반환 값에 의해 결정됩니다. 반환 값이 DISP_E_EXCEPTION면 a가 COleDispatchExcpetion throw되고, 그렇지 않으면 .입니다 COleException.

COleControlSite::SetPropertyV

dwDispID지정된 컨트롤 속성을 설정합니다.

virtual void SetPropertyV(
    DISPID dwDispID,
    VARTYPE vtProp,
    va_list argList);

매개 변수

dwDispID
설정할 컨트롤의 인터페이스에 있는 속성 또는 메서드의 IDispatch 디스패치 ID를 식별합니다.

vtProp
설정할 속성의 형식을 지정합니다. 가능한 값에 대해서는 COleDispatchDriver::InvokeHelper의 설명 섹션을 참조하세요.

Arglist
인수 목록에 대한 포인터입니다.

설명

호출되는 메서드 또는 속성에 대한 추가 매개 변수는 arg_list 매개 변수를 사용하여 전달할 수 있습니다. SetProperty 오류가 발생하면 예외가 throw됩니다.

예외 유형은 속성 또는 메서드를 설정하려는 시도의 반환 값에 의해 결정됩니다. 반환 값이 DISP_E_EXCEPTION면 a가 COleDispatchExcpetion throw되고, 그렇지 않으면 .입니다 COleException.

COleControlSite::SetWindowPos

컨트롤 사이트의 크기, 위치 및 Z 순서를 설정합니다.

virtual BOOL SetWindowPos(
    const CWnd* pWndInsertAfter,
    int x,
    int y,
    int cx,
    int cy,
    UINT nFlags);

매개 변수

pWndInsertAfter
창에 대한 포인터입니다.

x
창 왼쪽의 새 위치입니다.

y
창 위쪽의 새 위치입니다.

cx
창의 새 너비

cy
창의 새 높이입니다.

nFlags
창 크기 조정 및 위치 지정 플래그를 지정합니다. 가능한 값은 Windows SDK의 SetWindowPos에 대한 설명 섹션을 참조하세요.

Return Value

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

COleControlSite::SetWindowText

컨트롤 사이트의 텍스트를 설정합니다.

virtual void SetWindowText(LPCTSTR lpszString);

매개 변수

lpszString
새 제목 또는 컨트롤 텍스트로 사용할 null로 끝나는 문자열에 대한 포인터입니다.

설명

이 함수는 먼저 Caption stock 속성을 설정하려고 시도합니다. Caption 스톡 속성이 지원되지 않으면 텍스트 속성이 대신 설정됩니다.

COleControlSite::ShowWindow

창의 표시 상태를 설정합니다.

virtual BOOL ShowWindow(int nCmdShow);

매개 변수

nCmdShow
컨트롤 사이트를 표시하는 방법을 지정합니다. 다음 값 중 하나여야 합니다.

  • SW_HIDE 이 창을 숨기고 활성화를 다른 창으로 전달합니다.

  • SW_MINIMIZE 창을 최소화하고 시스템 목록에서 최상위 창을 활성화합니다.

  • SW_RESTORE 창을 활성화하고 표시합니다. 창이 최소화되거나 최대화되면 Windows는 창을 원래 크기와 위치로 복원합니다.

  • SW_SHOW 창을 활성화하고 현재 크기와 위치에 표시합니다.

  • SW_SHOWMAXIMIZED 창을 활성화하고 최대화된 창으로 표시합니다.

  • SW_SHOWMINIMIZED 창을 활성화하고 아이콘으로 표시합니다.

  • SW_SHOWMINNOACTIVE 창을 아이콘으로 표시합니다. 현재 활성 상태인 창이 다시 활성화된 기본.

  • SW_SHOWNA 창을 현재 상태로 표시합니다. 현재 활성 상태인 창이 다시 활성화된 기본.

  • SW_SHOWNOACTIVATE 창의 가장 최근 크기와 위치를 표시합니다. 현재 활성 상태인 창이 다시 활성화된 기본.

  • SW_SHOWNORMAL 창을 활성화하고 표시합니다. 창이 최소화되거나 최대화되면 Windows는 창을 원래 크기와 위치로 복원합니다.

Return Value

창이 이전에 표시되었으면 0이 아닌 경우 창이 이전에 숨겨져 있으면 0입니다.

참고 항목

CCmdTarget 클래스
계층 구조 차트
COleControlContainer 클래스