Delphi - база знаний

       

Использоватние Drag and Drop для заполнения полей в TWebBrowser?


Использоватние Drag and Drop для заполнения полей в TWebBrowser?




  This example shows how to fill out fields in your webbrowser by 
  dragging the content of Label1 to a field of your webbrowser} 

procedure TForm1.FormCreate(Sender: TObject); 
begin 
  label1.DragMode := dmAutomatic; 
end




procedure TForm1.WebBrowserDragOver(Sender, Source: TObject; X, 
  Y: Integer; State: TDragState; var Accept: Boolean); 
var 
  item: Variant; 
begin 
  //check if document is interactive 
  if (Webbrowser.ReadyState and READYSTATE_INTERACTIVE) = 3 then 
  begin 
    item := WebBrowser.OleObject.Document.elementFromPoint(x, y); 
    if Source is TLabel then 
      Accept := True; 
    Accept := (item.tagname = 'INPUT') and ((item.type = 'text') or 
      (item.type = 'password')) or (item.tagname = 'TEXTAREA'); 
  end
end

procedure TForm1.WebBrowserDragDrop(Sender, Source: TObject; X, 
  Y: Integer); 
var 
  item: Variant; 
begin 
  //check if document is interactive 
  if (Webbrowser.ReadyState and READYSTATE_INTERACTIVE) = 3 then 
  begin 
    item       := WebBrowser.OleObject.Document.elementFromPoint(x, y); 
    item.Value := label1.Caption; 
  end
end

Взято с сайта



Содержание раздела