CSDN博客

img newkey007

ATL开发的控件如何获取网页中的参数

发表于2004/7/3 11:46:00  1792人阅读

现以 需要提取参数 MyURL 为例:

1.     class ATL_NO_VTABLE CXXX: 

...

public IPersistPropertyBagImpl<CXXX>

2. 添加属性,MyURL, 在 idl 文件中对应有

[propget, id(16), helpstring("property MyURL")] HRESULT MyURL([out, retval] BSTR *pVal);
  [propput, id(16), helpstring("property MyURL")] HRESULT MyURL([in] BSTR newVal);
 

3. BEGIN_PROP_MAP(CXXX)
 PROP_DATA_ENTRY("_cx", m_sizeExtent.cx, VT_UI4)
 PROP_DATA_ENTRY("_cy", m_sizeExtent.cy, VT_UI4)

 PROP_ENTRY("MyURL", 16, CLSID_NULL)

 // Example entries
 // PROP_ENTRY("Property Description", dispid, clsid)
 // PROP_PAGE(CLSID_StockColorPage)
END_PROP_MAP()

 注意在 PROP_ENTRY("MyURL", 16, CLSID_NULL) 中的 16为 idl中的 id(16),自己的对应作修改

4。添加类变量 BOOL    m_bRequiresSave; // 这是 IPersistPropertyBagImpl 需要的

CComBSTR m_bstrMyUrl;

5. STDMETHODIMP CXXX::get_MyURL(BSTR *pVal)
{
 // TODO: Add your implementation code here
 *pVal = m_bstrMyUrl.Copy();
 return S_OK;
}

STDMETHODIMP CXXX::put_MyURL(BSTR newVal)
{
 // TODO: Add your implementation code here
 m_bstrMyUrl.Empty();

m_bstrMyUrl = newVal;
 return S_OK;
}

6.网页中

<PARAM name="MyURL" value="http://www.softwife.com">

0 0

相关博文

我的热门文章

img
取 消
img