3,055
社区成员
发帖
与我相关
我的任务
分享
void CLocateDlg::OnOK()
{
HRESULT hr = S_OK;
IHTMLDocument2 *pDoc = (IHTMLDocument2 *)m_web.get_Document();
if (pDoc == NULL) return;
IHTMLDocument3 *pDoc_3 = NULL;
if (pDoc->QueryInterface(IID_IHTMLDocument3, (void **)&pDoc_3) != S_OK)
{
pDoc->Release();
return;
}
IHTMLElement *pLng = NULL;
if (pDoc_3->getElementById(_T("lngX"), &pLng) == S_OK)
{
_variant_t var;
if (pLng->getAttribute(_T("value"), 0, &var) == S_OK && var.vt == VT_BSTR)
m_pt.x = ::wcstod(var.bstrVal, NULL);
pLng->Release();
}
IHTMLElement *pLat = NULL;
if (pDoc_3->getElementById(_T("latY"), &pLat) == S_OK)
{
_variant_t var;
if (pLat->getAttribute(_T("value"), 0, &var) == S_OK && var.vt == VT_BSTR)
m_pt.y = ::wcstod(var.bstrVal, NULL);
pLat->Release();
}
pDoc_3->Release();
pDoc->Release();
CDialog::OnOK();
}
m_web 为 WebBrowser 控件, 网页中需要获取的值用一个id表示