delphi2007 教程

delphi2007 教程

首页 新随笔 联系 聚合 管理
  1013 Posts :: 0 Stories :: 28 Comments :: 0 Trackbacks
SendMessage到浏览器焦点输入框没有作用? Delphi / Windows SDK/API
http://www.delphi2007.net/DelphiAPI/html/delphi_20061115123755228.html
使用SendMessage(GetFocus,WM_SETTEXT,0,longint(PChar('123456')));  
  当前焦点是浏览器的一个输入框,发现并没有改变输入框的值,而是改变了ie的标题  
  而同样的方法对其它界面都是有效的,该怎么处理?  
 

使WebBrowser获得焦点:  
   
  uses   MSHTML;  
   
  (WebBrowser1.Document   as   IHTMLDocument2).ParentWindow.Focus;

不是WebBrowser是浏览器

取得IE浏览器的窗口句柄,取得IHTMLDocument2接口,然后再利用.ParentWindow.Focus方法使其获得焦点。  
 

老妖:  
  现在是焦点已经在输入框上,只是用SendMessage没法给输入框赋值(我了解到说网页里的输入框是没有hwnd的)  
  你说的ParentWindow.Focus目的是为了把焦点放到输入框上吗?还请明示!  
 

要是能把代码贴出来,不胜感激!

要取得浏览器上的控件是和普通控件不一样的,上面的控件都是通过代码在本地动态生成的,不能简单地调用API,要利用浏览器提供的接口。

posted on 2009-02-03 09:50 delphi2007 阅读(636) 评论(0)  编辑 收藏 引用
只有注册用户登录后才能发表评论。