CAxWindow2T 类

此类提供用于操作托管 ActiveX 控件的窗口的方法,并且还支持承载许可的 ActiveX 控件。

重要

无法在 Windows 运行时中执行的应用程序中使用此类及其成员。

语法

template <class TBase = CWindow>
    class CAxWindow2T :
    public CAxWindowT<TBase>

参数

TBase
CAxWindowT 派生的类。

成员

公共构造函数

名称 描述
CAxWindow2T::CAxWindow2T 构造 CAxWindow2T 对象。

公共方法

名称 描述
CAxWindow2T::Create 创建一个主机窗口。
CAxWindow2T::CreateControlLic 创建授权的 ActiveX 控件,初始化它并在指定窗口中承载它。
CAxWindow2T::CreateControlLicEx 创建一个许可的 ActiveX 控件,对其进行初始化,将其托管在指定的窗口中,并从控件中检索一个接口指针(或多个指针)。
CAxWindow2T::GetWndClassName 检索窗口类名称的静态方法。

公共运算符

“属性” 描述
CAxWindow2T::operator = 将 HWND 分配到现有的 CAxWindow2T 对象。

备注

CAxWindow2T 提供用于操作托管 ActiveX 控件的窗口的方法。 CAxWindow2T 还支持托管许可的 ActiveX 控件。 托管由“AtlAxWinLic80”提供,后者是由 CAxWindow2T 包装。

CAxWindow2 类实现为 CAxWindow2T 类的专用化。 该专用化声明为:

typedef CAxWindow2T <CWindow> CAxWindow2;

注意

CAxWindowT 成员记录在 CAxWindow 下面。

有关使用此类成员的示例,请参阅使用 ATL AXHost 托管 ActiveX 控件

继承层次结构

TBase

CAxWindowT

CAxWindow2T

要求

标头:atlwin.h

CAxWindow2T::CAxWindow2T

构造 CAxWindow2T 对象。

CAxWindow2T(HWND  hWnd = NULL) : CAxWindowT<TBase>(hWnd)

参数

hWnd
现有窗口的句柄。

CAxWindow2T::Create

创建一个主机窗口。

HWND Create(
    HWND hWndParent,
    _U_RECT rect = NULL,
    LPCTSTR szWindowName = NULL,
    DWORD dwStyle = 0,
    DWORD dwExStyle = 0,
    _U_MENUorID MenuOrID = 0U,
    LPVOID lpCreateParam = NULL);

备注

CAxWindow2T::Create 调用 CWindow::Create 并将 LPCTSTR lpstrWndClass 参数设置为提供控件托管 (AtlAxWinLic80) 的窗口类。

有关参数和返回值的说明,请参阅CWindow::Create

注意:如果使用 0 作为 MenuOrID 参数的值,则必须将其指定为 0U(默认值)以避免编译器错误。

示例

有关使用 CAxWindow2T::Create 的示例,请参阅使用 ATL AXHost 托管 ActiveX 控件

CAxWindow2T::CreateControlLic

创建授权的 ActiveX 控件,初始化它并在指定窗口中承载它。

HRESULT CreateControlLic(
    DWORD dwResID,
    IStream* pStream = NULL,
    IUnknown** ppUnkContainer = NULL,
    BSTR bstrLicKey = NULL);

HRESULT CreateControlLic(
    LPCOLESTR lpszName,
    IStream* pStream = NULL,
    IUnknown** ppUnkContainer = NULL,
    BSTR bstrLicKey = NULL);

参数

bstrLicKey
控件的许可证密钥;如果创建非许可控件,则为 NULL。

注解

有关剩余参数和返回值的说明,请参阅 CAxWindow::CreateControl

示例

有关使用 CAxWindow2T::CreateControlLic 的示例,请参阅使用 ATL AXHost 托管 ActiveX 控件

CAxWindow2T::CreateControlLicEx

创建一个许可的 ActiveX 控件,对其进行初始化,将其托管在指定的窗口中,并从控件中检索一个接口指针(或多个指针)。

HRESULT CreateControlLicEx(
    LPCOLESTR lpszName,
    IStream* pStream = NULL,
    IUnknown** ppUnkContainer = NULL,
    IUnknown** ppUnkControl = NULL,
    REFIID iidSink = IID_NULL,
    IUnknown* punkSink = NULL,
    BSTR bstrLicKey = NULL);

    HRESULT CreateControlLicEx(
    DWORD dwResID,
    IStream* pStream = NULL,
    IUnknown** ppUnkContainer = NULL,
    IUnknown** ppUnkControl = NULL,
    REFIID iidSink = IID_NULL,
    IUnknown* punkSink = NULL,
    BSTR bstrLickey = NULL);

参数

bstrLicKey
控件的许可证密钥;如果创建非许可控件,则为 NULL。

备注

有关剩余参数和返回值的说明,请参阅 CAxWindow::CreateControlEx

示例

有关使用 CAxWindow2T::CreateControlLicEx 的示例,请参阅使用 ATL AXHost 托管 ActiveX 控件

CAxWindow2T::GetWndClassName

检索窗口类的名称。

static LPCTSTR GetWndClassName();

返回值

一个指向字符串的指针,该字符串包含可以承载许可和非许可 ActiveX 控件的窗口类 (AtlAxWinLic80) 的名称。

CAxWindow2T::operator =

将 HWND 分配到现有的 CAxWindow2T 对象。

CAxWindow2T<TBase>& operator= (HWND hWnd);

参数

hWnd
现有窗口的句柄。

另请参阅

类概述
控件包含常见问题