delphi 11 编辑模式 浏览模式

编辑模式
浏览模式
设置焦点
//在使用前需要Webbrowser已经浏览过一个网页 否则错误
uses MSHTML;
///获取Webbrowser编辑模式里面的内容

procedure EditMode();
begin
  (Form1.WebBrowser1.Document as IHTMLDocument2).designMode := 'on';
end;
//------------------------------------------------------------------------------

procedure ViewMode();
begin
  (Form1.WebBrowser1.Document as IHTMLDocument2).designMode := 'off';
end;
 
 
//uses ActiveX;    
WebBrowser1.OleObject.Document.designMode:='On';//编辑模式
WebBrowser1.OleObject.Document.designMode:='Off';//浏览模式
    
(Form1.WebBrowser1.Document as IHTMLDocument2).execCommand('BrowseMode',false,1);
(Form1.WebBrowser1.Document as IHTMLDocument2).execCommand('EditMode',false,1);
 
 
 
 
设置焦点 (当Webbrowser处于编辑模式)
TWebBrowser非常特殊,它从TWinControl继承来的SetFocus方法并不能使得它所包含的文档获得焦点

//方法1
procedure TForm1.ToolButton1Click(Sender: TObject);
begin
   if Form1.WebBrowser1.Document <> nil then
     with WebBrowser1.Application as IOleobject do
        DoVerb(OLEIVERB_UIACTIVATE, nil, WebBrowser1, 0, Handle, GetClientRect());
end;

//方法2 Form1OnCreate事件无效
//OnShow可以
if WebBrowser1.Document <> nil then
    IHTMLWindow2(IHTMLDocument2(WebBrowser1.Document).ParentWindow).Focus();




posted @ 2014-07-29 20:01  XE2011  阅读(373)  评论(0编辑  收藏  举报