本文整理汇总了C++中dom::element::combine_url方法的典型用法代码示例。如果您正苦于以下问题:C++ element::combine_url方法的具体用法?C++ element::combine_url怎么用?C++ element::combine_url使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类dom::element
的用法示例。
在下文中一共展示了element::combine_url方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: notify
void notify(dom::element& el, NMHL_HYPERLINK::type code)
{
// send notification
NMHL_HYPERLINK nm;
memset(&nm,0,sizeof(nm));
HWND hwnd = el.get_element_hwnd(true);
nm.hdr.code = HLN_HYPERLINK;
nm.hdr.hwndFrom = hwnd;
nm.hdr.idFrom = GetDlgCtrlID(hwnd);
nm.action = code;
nm.he = el;
dom::element root = el.root();
const wchar_t *pHREF = el.get_attribute("href");
if(pHREF)
{
if(code == NMHL_HYPERLINK::CLICK && pHREF[0] == '#') // anchor name, this is a local hyperlink
{
if( pHREF+1 == 0 ) // href='#' case
return;
dom::element anchor_el = root.find_first("[id='%S'],[name='%S']",pHREF+1,pHREF+1);
//find_element_by_name(el.root_element(hwnd), pHREF + 1);
if(anchor_el.is_valid()) // found
{
anchor_el.scroll_to_view(true /* scroll it to top of the view */);
return; // shall host be notified about this?
}
}
wcsncpy(nm.szHREF,pHREF,MAX_URL_LENGTH);
el.combine_url(nm.szHREF,MAX_URL_LENGTH);
}
const wchar_t *pszTarget = el.get_attribute("target");
if(pszTarget)
{
if(code == NMHL_HYPERLINK::CLICK && try_to_load( root, nm.szHREF, pszTarget ))
return;
wcsncpy(nm.szTarget,pszTarget,MAX_URL_LENGTH);
}
::SendMessage(hwnd,WM_BEHAVIOR_NOTIFY,HLN_HYPERLINK,LPARAM(&nm));
}