次の方法で共有


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::SafeSetProperty 例外をスローすることなく、コントロールのプロパティまたはメソッドを設定します。
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 コントロールの接続ポイントの Cookie。
COleControlSite::m_dwMiscStatus ホストされるコントロールのその他の状態。
COleControlSite::m_dwPropNotifySink コントロールの IPropertyNotifySink Cookie。
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 コントロールが、表示サイトの場所と範囲、モニカー、ユーザー インターフェイス、アンビエント プロパティ、およびそのコンテナーによって提供されるその他のリソースに関する情報を取得する主な手段です。 COleControlSiteIOleControlSiteIOleInPlaceSiteIOleClientSiteIPropertyNotifySinkIBoundObjectSiteINotifyDBEventsIRowSetNotify インターフェイスを完全に実装します。 さらに、IDispatch インターフェイス (アンビエント プロパティとイベント シンクのサポートを提供) も実装されます。

COleControlSiteを使用して ActiveX コントロール サイトを作成するには、COleControlSiteからクラスを派生させます。 コンテナーの CWnd派生クラス (ダイアログ ボックスなど) で、 CWnd::CreateControlSite 関数をオーバーライドします。

継承階層

CObject

CCmdTarget

COleControlSite

要件

Header: 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

COleControlSite オブジェクトによってホストされる ActiveX コントロールを作成します。

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 スタイル。 使用可能なスタイルは、 Remarks セクションの下に一覧表示されます。

rect
コントロールのサイズと位置を指定します。 CRect オブジェクトまたはRECT構造体のいずれかを指定できます。

nID
コントロールの子ウィンドウ ID を指定します。

pPersist
コントロールの永続的な状態を含む CFile へのポインター。 既定値は NULL で、永続的ストレージから状態を復元せずにコントロール自体を初期化することを示します。 NULL でない場合は、ストリームまたはストレージのいずれかの形式で、コントロールの永続データを含む CFile派生オブジェクトへのポインターである必要があります。 このデータは、クライアントの以前のアクティブ化で保存されている可能性があります。 CFileには他のデータを含めることができますが、読み取り/書き込みポインターは、CreateControlの呼び出し時に永続データの最初のバイトに設定する必要があります。

bStorage
pPersistのデータをIStorageデータと解釈するか、IStreamデータとして解釈するかを示します。 pPersist のデータがストレージの場合、bStorage は TRUE にする必要があります。 pPersist のデータがストリームの場合、bStorage は FALSE にする必要があります。 既定値は FALSE です。

bstrLicKey
オプションのライセンス キー データ。 このデータは、ランタイム ライセンス キーを必要とするコントロールを作成する場合にのみ必要です。 コントロールがライセンスをサポートしている場合は、コントロールの作成を成功させるためにライセンス キーを指定する必要があります。 既定値は NULL です。

ppt
コントロールの左上隅を含む POINT 構造体へのポインター。 コントロールのサイズは、 psize の値によって決まります。 pptおよびpsize値は、コントロールのサイズと位置を指定するオプションのメソッドです。

psize
コントロールのサイズを含む SIZE 構造体へのポインター。 左上隅は、 ppt の値によって決まります。 pptおよびpsize値は、コントロールのサイズと位置を指定するオプションのメソッドです。

戻り値

標準の HRESULT 値。

解説

CreateControlでは、Windows dwStyle フラグのサブセットのみがサポートされます。

  • WS_VISIBLE 最初に表示されるウィンドウを作成します。 通常のウィンドウのように、コントロールをすぐに表示する場合は必須です。

  • WS_DISABLED 最初に無効になっているウィンドウを作成します。 無効なウィンドウは、ユーザーからの入力を受け取ることができません。 コントロールに Enabled プロパティがある場合に設定できます。

  • WS_BORDER 細線の境界線を持つウィンドウを作成します。 コントロールに BorderStyle プロパティがある場合に設定できます。

  • WS_GROUP コントロールのグループの最初のコントロールを指定します。 ユーザーは、方向キーを使用して、グループ内のあるコントロールから次のコントロールにキーボード フォーカスを変更できます。 最初のコントロールの後にWS_GROUP スタイルで定義されたすべてのコントロールは、同じグループに属します。 WS_GROUP スタイルの次のコントロールは、グループを終了し、次のグループを開始します。

  • WS_TABSTOP ユーザーが Tab キーを押したときにキーボード フォーカスを受け取ることができるコントロールを指定します。 Tab キーを押すと、キーボード フォーカスが WS_TABSTOP スタイルの次のコントロールに変更されます。

2 番目のオーバーロードを使用して、既定のサイズのコントロールを作成します。

COleControlSite::D estroyControl

COleControlSite オブジェクトを破棄します。

virtual BOOL DestroyControl();

戻り値

成功した場合は 0 以外。それ以外の場合は 0。

解説

完了すると、オブジェクトはメモリから解放され、オブジェクトへのポインターは無効になります。

COleControlSite::D oVerb

指定した動詞を実行します。

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

パラメーター

nVerb
実行する動詞を指定します。 これには、次のいずれかを含めることができます。

意味 記号
0 主動詞 OLEIVERB_PRIMARY
-1 第 2 動詞 (なし)
1 編集するオブジェクトを表示します。 OLEIVERB_SHOW
-2 別のウィンドウでアイテムを編集します。 OLEIVERB_OPEN
-3 オブジェクトを非表示にします。 OLEIVERB_HIDE
-4 コントロールをインプレースでアクティブにします。 OLEIVERB_UIACTIVATE
-5 追加のユーザー インターフェイス要素を使用せずに、コントロールをインプレースでアクティブにします。 OLEIVERB_INPLACEACTIVATE
-7 コントロールのプロパティを表示します。 OLEIVERB_PROPERTIES

lpMsg
項目がアクティブ化される原因となったメッセージへのポインター。

戻り値

標準の HRESULT 値。

解説

この関数は、コントロールの IOleObject インターフェイスを直接呼び出して、指定された動詞を実行します。 この関数呼び出しの結果として例外がスローされた場合は、HRESULT エラー コードが返されます。

詳細については、Windows SDK の「 IOleObject::D oVerb 」を参照してください。

COleControlSite::EnableDSC

コントロール サイトのデータ ソーシングを有効にします。

virtual void EnableDSC();

解説

コントロール サイトのデータ ソーシングを有効にして初期化するために、フレームワークによって呼び出されます。 この関数をオーバーライドして、カスタマイズされた動作を提供します。

COleControlSite::EnableWindow

コントロール サイトへのマウス入力とキーボード入力を有効または無効にします。

virtual BOOL EnableWindow(BOOL bEnable);

パラメーター

bEnable
ウィンドウ入力を有効にする場合は TRUE、それ以外の場合は FALSE を指定します。

戻り値

ウィンドウが以前に無効になっていた場合は 0 以外、それ以外の場合は 0。

COleControlSite::FreezeEvents

コントロール サイトがコントロールから発生したイベントを処理するか無視するかを指定します。

void FreezeEvents(BOOL bFreeze);

パラメーター

bFreeze
コントロール サイトにおけるイベントの受け取りを中止するかどうかを指定します。 コントロールがイベントを受け入れられない場合は 0 以外。それ以外の場合は 0。

解説

bFreeze が TRUE の場合、コントロール サイトはイベントの発生を停止するようにコントロールに要求します。 bFreeze が FALSE の場合、コントロール サイトはイベントの発生を継続するようにコントロールに要求します。

Note

コントロール サイトから要求された場合、コントロールはイベントの発生を停止する必要はありません。 引き続き起動できますが、後続のすべてのイベントはコントロール サイトによって無視されます。

COleControlSite::GetControlInfo

コントロールのキーボードニーモニックとキーボード動作に関する情報を取得します。

void GetControlInfo();

解説

情報は COleControlSite::m_ctlInfo に格納されます。

COleControlSite::GetDefBtnCode

コントロールが既定のプッシュ ボタンかどうかを判断します。

DWORD GetDefBtnCode();

戻り値

値は、次のいずれかです。

  • DLGC_DEFPUSHBUTTON コントロールは、ダイアログの既定のボタンです。

  • DLGC_UNDEFPUSHBUTTON コントロールは、ダイアログの既定のボタンではありません。

  • 0 コントロールはボタンではありません。

COleControlSite::GetDlgCtrlID

コントロールの識別子を取得します。

virtual int GetDlgCtrlID() const;

戻り値

コントロールのダイアログ項目識別子。

COleControlSite::GetEventIID

コントロールの既定のイベント インターフェイスへのポインターを取得します。

BOOL GetEventIID(IID* piid);

パラメーター

piid
インターフェイス ID へのポインター。

戻り値

成功した場合は 0 以外。それ以外の場合は 0。 成功した場合、 piid には、コントロールの既定のイベント インターフェイスのインターフェイス ID が含まれます。

COleControlSite::GetExStyle

ウィンドウの拡張スタイルを取得します。

virtual DWORD GetExStyle() const;

戻り値

コントロール ウィンドウの拡張スタイル。

解説

通常のスタイルを取得するには、 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;

戻り値

ウィンドウのスタイル。

解説

使用可能な値の一覧については、「 Windows スタイル」を参照してください。 コントロール サイトの拡張スタイルを取得するには、 COleControlSite::GetExStyle を呼び出します。

COleControlSite::GetWindowText

コントロールの現在のテキストを取得します。

virtual void GetWindowText(CString& str) const;

パラメーター

str
コントロールの現在のテキストを含む CString オブジェクトへの参照。

解説

コントロールが Caption ストック プロパティをサポートしている場合、この値が返されます。 Caption ストック プロパティがサポートされていない場合は、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 の呼び出しに失敗すると、この関数は、例外をスローします。 IDispatch::Invokeによって返される状態コードがDISP_E_EXCEPTION場合、この関数はCOleDispatchException オブジェクトをスローし、それ以外の場合は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();

戻り値

コントロールがウィンドウの既定のボタンの場合は 0 以外、それ以外の場合は 0。

COleControlSite::IsWindowEnabled

コントロール サイトが有効かどうかを判断します。

virtual BOOL IsWindowEnabled() const;

戻り値

コントロールが有効な場合は 0 以外、それ以外の場合は 0。

解説

この値は、コントロールの Enabled ストック プロパティから取得されます。

COleControlSite::m_bIsWindowless

オブジェクトがウィンドウなしのコントロールであるかどうかを判断します。

BOOL m_bIsWindowless;

解説

コントロールにウィンドウがない場合は 0 以外、それ以外の場合は 0。

COleControlSite::m_ctlInfo

コントロールによるキーボード入力の処理方法に関する情報。

CONTROLINFO m_ctlInfo;

解説

この情報は、 CONTROLINFO 構造体に格納されます。

COleControlSite::m_dwEventSink

コントロールのイベント シンクからの接続ポイントの Cookie を格納します。

DWORD m_dwEventSink;

COleControlSite::m_dwMiscStatus

コントロールに関するその他の情報を格納します。

DWORD m_dwMiscStatus;

解説

詳細については、Windows SDK OLEMISCを参照してください。

COleControlSite::m_dwPropNotifySink

IPropertyNotifySink Cookie が含まれています。

DWORD m_dwPropNotifySink;

COleControlSite::m_dwStyle

コントロールの Window スタイルを格納します。

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

コントロールの IOleInPlaceObject IOleInPlaceObject インターフェイスを格納します。

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 に関するページを参照してください。

戻り値

スタイルが変更された場合は 0 以外、それ以外の場合は 0。

解説

コントロールの stock Enabled プロパティは、WS_DISABLEDの設定と一致するように変更されます。 コントロールのストック Border Style プロパティは、WS_BORDERの要求された設定に合わせて変更されます。 他のすべてのスタイルは、コントロールのウィンドウ ハンドル (存在する場合) に直接適用されます。

コントロールのウィンドウ スタイルを変更します。 追加または削除するスタイルは、ビットごとの OR (|) 演算子を使用して結合できます。 使用可能なウィンドウ スタイルについては、Windows SDK の CreateWindow 関数を参照してください。

nFlags が 0 以外の場合、ModifyStyle は Win32 関数 SetWindowPos を呼び出し、nFlags を次の 4 つのフラグと組み合わせてウィンドウを再描画します。

  • 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 に関するページを参照してください。

戻り値

スタイルが変更された場合は 0 以外、それ以外の場合は 0。

解説

コントロールのストック外観プロパティは、WS_EX_CLIENTEDGEの設定に合わせて変更されます。 他のすべての拡張ウィンドウ スタイルは、コントロールのウィンドウ ハンドル (存在する場合) に直接適用されます。

コントロール サイト オブジェクトのウィンドウ拡張スタイルを変更します。 追加または削除するスタイルは、ビットごとの OR (|) 演算子を使用して結合できます。 使用可能なウィンドウ スタイルについては、Windows SDK の CreateWindowEx 関数を参照してください。

nFlags が 0 以外の場合、ModifyStyleEx は Win32 関数 SetWindowPos を呼び出し、nFlags を次の 4 つのフラグと組み合わせてウィンドウを再描画します。

  • 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();

戻り値

コントロール サイトがアクティブ化された場合は 0 以外、それ以外の場合は 0。

解説

この関数は、ユーザーがコントロールの作成プロセスをオーバーライドしている場合にのみ呼び出す必要があります。

IPersist*::LoadメソッドとIPersist*::InitNewメソッドは、迅速なアクティブ化が発生した後に呼び出す必要があります。 コントロールは、クイック アクティブ化中にコンテナーのシンクへの接続を確立する必要があります。 ただし、 IPersist*::Load または IPersist*::InitNew が呼び出されるまで、これらの接続はライブになりません。

COleControlSite::SafeSetProperty

dwDispID で指定されたコントロール プロパティを設定します。

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

パラメーター

dwDispID
設定するコントロールの IDispatch インターフェイスで見つかったプロパティまたはメソッドのディスパッチ ID を識別します。

vtProp
設定するプロパティの種類を指定します。 使用できる値については、 COleDispatchDriver::InvokeHelperの「解説」をご覧ください。

...
vtProp で指定された型の 1 つのパラメーター。

戻り値

成功した場合は 0 以外を返します。それ以外の場合は 0 を返します。

解説

Note

SetPropertySetPropertyVとは異なり、エラーが発生した場合 (存在しないプロパティの設定など)、例外はスローされません。

COleControlSite::SetDefaultButton

コントロールを既定のボタンとして設定します。

void SetDefaultButton(BOOL bDefault);

パラメーター

bDefault
コントロールを既定のボタンにする必要がある場合は 0 以外。それ以外の場合は 0。

解説

Note

コントロールには、OLEMISC_ACTSLIKEBUTTON状態ビットが設定されている必要があります。

COleControlSite::SetDlgCtrlID

コントロールのダイアログ項目識別子の値を変更します。

virtual int SetDlgCtrlID(int nID);

パラメーター

nID
新しい識別子の値。

戻り値

成功した場合は、ウィンドウの前のダイアログ 項目識別子。それ以外の場合は 0。

解説

COleControlSite::SetFocus

コントロールにフォーカスを設定します。

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

パラメーター

lpmsg
MSG 構造体へのポインター。 この構造体には、現在のコントロール サイトに含まれるコントロールの SetFocus 要求をトリガーする Windows メッセージが含まれています。

戻り値

以前にフォーカスがあったウィンドウへのポインター。

COleControlSite::SetProperty

dwDispID で指定されたコントロール プロパティを設定します。

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

パラメーター

dwDispID
設定するコントロールの IDispatch インターフェイスで見つかったプロパティまたはメソッドのディスパッチ ID を識別します。

vtProp
設定するプロパティの種類を指定します。 使用できる値については、 COleDispatchDriver::InvokeHelperの「解説」をご覧ください。

...
vtProp で指定された型の 1 つのパラメーター。

解説

SetPropertyエラーが発生した場合は、例外がスローされます。

例外の種類は、プロパティまたはメソッドの設定試行の戻り値によって決まります。 戻り値が DISP_E_EXCEPTION場合は、 COleDispatchExcpetion がスローされます。それ以外の場合は COleException

COleControlSite::SetPropertyV

dwDispID で指定されたコントロール プロパティを設定します。

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

パラメーター

dwDispID
設定するコントロールの IDispatch インターフェイスで見つかったプロパティまたはメソッドのディスパッチ ID を識別します。

vtProp
設定するプロパティの種類を指定します。 使用できる値については、 COleDispatchDriver::InvokeHelperの「解説」をご覧ください。

argList
引数リストへのポインター。

解説

呼び出されるメソッドまたはプロパティの追加のパラメーターは、 arg_list パラメーターを使用して渡すことができます。 SetPropertyエラーが発生した場合は、例外がスローされます。

例外の種類は、プロパティまたはメソッドの設定試行の戻り値によって決まります。 戻り値が DISP_E_EXCEPTION場合は、 COleDispatchExcpetion がスローされます。それ以外の場合は 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 の「解説」セクションを参照してください。

戻り値

成功した場合は 0 以外、それ以外の場合は 0。

COleControlSite::SetWindowText

コントロール サイトのテキストを設定します。

virtual void SetWindowText(LPCTSTR lpszString);

パラメーター

lpszString
新しいタイトルまたはコントロール テキストとして使用される null で終わる文字列へのポインター。

解説

この関数は、最初に Caption ストック プロパティの設定を試みます。 Caption ストック プロパティがサポートされていない場合は、代わりに Text プロパティが設定されます。

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 は元のサイズと位置に復元します。

戻り値

ウィンドウが以前に表示されていた場合は 0 以外。ウィンドウが以前非表示だった場合は 0。

関連項目

CCmdTarget クラス
階層図
COleControlContainer クラス