COleControlSite::CreateControl 是 MFC 中 COleControlSite 类的一个公共方法,用于创建和激活与控件关联的 OLE 控件。这个方法通常在控件站点(control site)被创建后调用,用于初始化并创建相关的 ActiveX 控件。

下面是关于 COleControlSite::CreateControl 方法的一些重要信息:

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

参数说明:

  •  pWndCtrl: 控件站点所属的窗口。

  •  clsid: 控件的类标识符。

  •  lpszWindowName: 控件的窗口名。

  •  dwStyle: 控件的样式。

  •  rect: 控件的初始位置和大小。

  •  nID: 控件的标识符。

  •  pPersist: 指向控件的持久性存储的指针(可以为 NULL)。

  •  bStorage: 指示是否使用存储的标志。

  •  bstrLicKey: 用于激活控件的许可证密钥(可以为 NULL)。


返回值:

  •  如果成功,返回 TRUE。

  •  如果失败,返回 FALSE。


示例用法:
COleControlSite* pSite = new COleControlSite(this);
CLSID clsid;
::CLSIDFromProgID(L"YourControl.ProgID", &clsid);

if (pSite->CreateControl(this, clsid, _T("YourControlWindow"), WS_VISIBLE | WS_CHILD, rect, IDC_YOUR_CONTROL))
{
    // 成功创建控件
}
else
{
    // 创建控件失败
}

这只是一个简单的示例,实际上,CreateControl 方法提供了更多参数和配置选项,以满足特定的需求。


转载请注明出处:http://www.zyzy.cn/article/detail/21212/MFC/COleControlSite