CHtmlView怎么实现双击某个坐标的图片,获取该坐标图片的url地址?

brk1985 2014-07-07 04:06:57


BOOL CSampleBrowerView::PreTranslateMessage(MSG* pMsg)
{
if (pMsg->message == WM_LBUTTONDBLCLK)//双击
{
//怎么实现?
此处需要添加代码
CString strPath;
strPath.Format("D:\\book\\%06d.png",index);//%06d 表示6位整数,不足6位前面补零
//GetUrlCacheEntryInfo();
//strLink=GetLocationURL();//获取当前url地址
URLDownloadToFile(NULL,strLink,strPath,0,NULL);
indexBook++;
}
return CHtmlView::PreTranslateMessage(pMsg);
}


我希望双击图片,保存图片,前提需要获得鼠标点击处图片的url地址,但怎么样才能做到双击图片,获取url呢?
比如这个http://picture.youth.cn/qtdb/201407/t20140707_5477187_1.htm帖子,双击第一张图片后,希望获取第一张图片地址是 http://picture.youth.cn/qtdb/201407/W020140707501632574257.jpg

该怎么实现呢?
...全文
190 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
fishion 2014-07-08
  • 打赏
  • 举报
回复
可以用IHTMLElement的innerHTML,outerHTML等来获取
brk1985 2014-07-08
  • 打赏
  • 举报
回复
引用 4 楼 fishion 的回复:
通过IHTMLDocument2的elementFromPoint得到IHTMLElementX,再根据IHTMLElementX里面的方法查询下这个项是否包含图片
IHTMLElementX应该是IHTMLElement吧?找遍函数没看到合适的,到底是哪个函数呢?
brk1985 2014-07-08
  • 打赏
  • 举报
回复
引用 3 楼 oyljerry 的回复:
你打印IHTMLElement对应的内容是什么
LPDISPATCH lDispatch = CHtmlView::GetHtmlDocument(); IHTMLDocument2* pDocument = (IHTMLDocument2*)lDispatch;//将得到的LPDISPATCH指针强制转换为IHTMLDocument2指针 IHTMLElement* pElement; pDocument->elementFromPoint(pMsg->pt.x, pMsg->pt.y, &pElement);//得到IHTMLElement对象,这个IHTMLElement对象即为html里图片元素的对象(如果你点的是图片) 我通过以上方法获得IHTMLElement指针,怎么打印IHTMLElement内容呢?innerHTML?试过获得的innerHTML为NULL BSTR bstrtemp2; pElement->get_innerHTML(&bstrtemp2); CString attrValue = bstrtemp2;
fishion 2014-07-08
  • 打赏
  • 举报
回复
通过IHTMLDocument2的elementFromPoint得到IHTMLElementX,再根据IHTMLElementX里面的方法查询下这个项是否包含图片
oyljerry 2014-07-08
  • 打赏
  • 举报
回复
你打印IHTMLElement对应的内容是什么
oyljerry 2014-07-07
  • 打赏
  • 举报
回复
需要通过Javascript来获取图片连接等

3,055

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC HTML/XML
社区管理员
  • HTML/XML社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧