📄 subject_15242.htm
字号:
<p>
序号:15242 发表者:rongrong 发表日期:2002-09-16 20:03:33
<br>主题:请各位帮忙
<br>内容:最近遇到一难题,如何获得网页上的某个控件的标志或是确定其相对位置,比如网页上的文本框,命令按钮等控件.<BR>我用Spy++看过,没有用.请问各位大虾谁能解决这个问题,小弟先谢了
<br><a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p>
<hr size=1>
<blockquote><p>
<font color=red>答案被接受</font><br>回复者:Aikoc 回复日期:2002-09-17 09:25:03
<br>内容:最好的方法是用脚本,编写一个脚本,通过IHTMLWindow2来Execute<BR>例如:<BR> LPDISPATCH lpDisp = NULL;<BR> lpDisp = GetHtmlDocument();<BR> if(!lpDisp)<BR> return FALSE;<BR><BR> IHTMLDocument2* lpDoc = NULL;<BR> HRESULT hr = lpDisp->QueryInterface(IID_IHTMLDocument2,(void**)&lpDoc);<BR> if(FAILED(hr) || !lpDoc)<BR> return FALSE;<BR> <BR> IHTMLWindow2* lpWindow = NULL;<BR> hr = lpDoc->get_parentWindow(&lpWindow);<BR> lpDoc->Release();<BR> lpDoc = NULL;<BR> if(FAILED(hr) || !lpWindow)<BR> return FALSE;<BR><BR> CString strCode = "alert(\"enter your script code here\");";<BR> USES_CONVERSION;<BR> COleVariant vtEmpty;<BR> BSTR bstrCode = strCode.AllocSysString();<BR> BSTR bstrLang = SysAllocString(L"javascript");<BR> lpWindow->execScript(bstrCode,bstrLang,&vtEmpty);<BR> SysFreeString(bstrCode);<BR> SysFreeString(bstrLang);<BR><BR> lpWindow->Release();<BR> lpWindow = NULL;<BR> return TRUE;<BR>当然你也可以通过对应的IHTMLElement接口来获取,但代吗会长很多,<BR>也没有script来得灵活和方便
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:rongrong 回复日期:2002-09-17 14:49:02
<br>内容:请问有这方面的资料吗,我很想深入的学一下!
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:Aikoc 回复日期:2002-09-17 18:32:14
<br>内容:可以找些IE编程方面的书看看.<BR>http://www.codeguru.com/ieprogram/index.shtml<BR>http://www.codetools.com/shell/
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:rongrong 回复日期:2002-09-18 12:29:48
<br>内容:非常感谢您
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:rongrong 回复日期:2002-09-23 20:23:24
<br>内容:Aikoc,帮忙啊,不好意思,照您的方法,我还是没有做出来<BR>我要做的效果是像spy++那样,当鼠标拖动的图标指到控件上释放,就可以获得其相对位置,或其标志(比如control id等),而对于IE浏览器,则无法获得其页面内部控件的相对位置或唯一标志,我用spy++试过,也没用.我得到了您的回复后,回去试了,也没有实现,可能是我太苯了,请您帮帮忙,帮我想想办法.还有,在您提供的方法里面,如何获得其返回值,比如内部控件标志的值!请帮忙说的详细点好吗!<BR>非常感谢您!
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -