描述
创建一个显示HTML的受信任的模态对话框。
C++ 语法
HRESULT ShowHTMLDialog( HWND hwndParent, IMoniker *pMk, VARIANT *pvarArgIn, WCHAR *pchOptions, VARIANT *pvarArgOut, IUnknown *punkHost ); |
PowerBASIC 语法
METHOD ShowHTMLDialog ( _ BYVAL hwndParent AS DWORD, _ BYVAL pMk AS DWORD, _ BYVAL pvarArgIn AS VARIANT, _ BYVAL pchOptions AS DWORD, _ BYREF pvarArgOut AS VARIANT, _ BYREF punkHost AS IUnknown _ ) AS LONG |
参数
hwndParent |
[in]HWND指定对话框的父项的句柄。此参数可以设置为NULL。 |
pMk |
[in]指向IMoniker接口的指针,从该接口加载对话框的HTML。 |
pvarArgIn |
[in]指向包含对话框的输入数据的VARIANT的指针。在此VARIANT中传递的数据被放置在窗口对象的dialogArguments属性中。此参数可以设置为NULL。 |
pchOptions |
[in]指向宽字符串开头的指针,其中包含有关对话框的窗口装饰的信息,使用以下一个或多个以分号分隔的值: dialogHeight:sHeight 设置对话窗口的高度(请参阅默认计量单位的注释)。 dialogLeft:sXPos 设置对话窗口相对于桌面左上角的左侧位置。 dialogTop:sYPos 设置对话窗口相对于桌面左上角的顶部位置。 dialogWidth:sWidth 设置对话窗口的宽度(参见备注默认度量单位)。 center:{yes |不| 1 | 0 |在|关闭} 指定是否将对话窗口置于桌面中。默认值为yes。 对话框:{yes |没有| 1 | 0 |在|关闭} 指定打印或使用打印预览时对话窗口是否隐藏。此函数仅在从可信应用程序打开对话框时可用。默认值为no。 边缘:{凹陷|上调} 指定对话窗口的边缘样式。默认值为提高。 帮助:{yes |没有| 1 | 0 |在|关闭} 指定对话窗口是否显示上下文相关的帮助图标。默认值为yes。 可调整大小:{yes |没有| 1 | 0 |在|关闭} 指定对话窗口是否具有固定的维度。默认值为no。 滚动:{yes |没有| 1 | 0 |在|关闭} 指定对话窗口是否显示滚动条。默认值为yes。 状态:{yes |没有| 1 | 0 |在|关闭} 指定对话框窗口是否显示状态栏。不可信对话窗口的默认值为yes,对于受信任的对话框窗口则为“否”。 unadorned:{yes |没有| 1 | 0 |在|关闭} 指定对话窗口是否显示边框窗口chrome。此函数仅在从可信应用程序打开对话框时可用。默认值为no。 |
pvarArgOut |
[out]指向包含对话框的输出数据的VARIANT的指针。该VARIANT接收放置在窗口对象的returnValue属性中的数据。此参数可以设置为NULL。 |
punkHost |
[out]指向主机应用程序的IUnknown接口的指针。此参数可以设置为NULL。 |
OBJRESULT
如果成功返回S_OK,否则返回错误值。
备注
使用此方法创建的对话框是受信任的,没有用户界面将其标识为Microsoft Internet Explorer对话框。对话框的标题栏上的名称取自PMK指定的HTML源中的标题元素。如果没有标题元素,则标题栏名称为空。
有关模态对话框和所使用的默认度量单位的更多信息,请参阅IHTMLWindow2.showModalDialog.
您可以使用CreateURLMonikerEx或CreateURLMoniker获取对话框的HTML源的URL的IMoniker接口指针。
例
此示例使用CoCreateInstance获取IHostDialogHelper接口指针,并调用IHostDialogHelper.ShowHTMLDialog.为了清楚起见,省略了错误处理。
IHostDialogHelper* pHDH;
IMoniker* pUrlMoniker;
BSTR bstrOptions = SysAllocString(L"dialogHeight:30;dialogWidth:40");
BSTR bstrPath = SysAllocString(L"c:\\dummy.htm");
CreateURLMoniker(NULL, bstrPath, &pUrlMoniker);
CoCreateInstance(CLSID_HostDialogHelper,
NULL,
CLSCTX_INPROC,
IID_IHostDialogHelper,
(void**)&pHDH);
pHDH->ShowHTMLDialog(NULL,
pUrlMoniker,
NULL,
bstrOptions,
NULL,
NULL);
SysFreeString(bstrPath);
SysFreeString(bstrOptions);
pUrlMoniker->Release();
pHDH->Release();


