CDHtmlDialog 基本使用


  • 跳轉

Navigate("res://tt.exe/#138");

138是html的資源號

 

  • 輸入框的Get,set


HRESULT CTTDlg::OnButtonCancel(IHTMLElement* pElement)
{

BSTR p;
pElement->get_id(&p);


CString szText;
HRESULT hr = NULL;
IHTMLElement* psrcElement;
VARIANT value;
hr = GetElement("kw", &psrcElement );
if( SUCCEEDED( hr ))
{
psrcElement->getAttribute( L"value", 0, &value );
szText = value.bstrVal;

}


AfxMessageBox((CString)p +szText);
hr = GetElement( "Text1", &psrcElement );
if( SUCCEEDED( hr ))
{
szText+="456";
value.bstrVal=szText.AllocSysString();
psrcElement->setAttribute( L"value",value );
}
return S_OK;
}

  

  • 超鏈接

 <a href="res://tt.exe/#138" ></a>

  • 圖片顯示

<img src="res:/JPG/#137" width="20%" height="20%" >

 

  • 獲得控件的坐標
IHTMLElement* but;
	HRESULT rs= GetElement("ButtonOK",&but);
	//控件跟隨
	if (SUCCEEDED(rs))
	{
		 
		long top,l,h,w;
		
		but->get_offsetTop(&top);
		but->get_offsetLeft(&l);
		but->get_offsetHeight(&h);
		but->get_offsetWidth(&w);
		IHTMLElement* hContainer=NULL;
		long value=0;
		rs=but->get_offsetParent(&hContainer);      //其真實坐標應該是所有的父結點的坐標的疊加,所以有以下循環
		while ( hContainer )
		{
			hContainer->get_offsetLeft(&value); 
			l += value;
			hContainer->get_offsetTop(&value);
			top += value;
			hContainer->get_offsetParent(&hContainer);
		}
		CRect rect(l,top,w+l,top+h); 
		GetDlgItem(IDC_STATIC_P)->MoveWindow(rect);
	}

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM