скрыть

скрыть

  Форум  

Delphi FAQ - Часто задаваемые вопросы

| Базы данных | Графика и Игры | Интернет и Сети | Компоненты и Классы | Мультимедиа |
| ОС и Железо | Программа и Интерфейс | Рабочий стол | Синтаксис | Технологии | Файловая система |



Google  
 

Заполнение полей формы в TWebBrowser методом Drag-and-Drop



Оформил: DeeCo

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

 { 
  Mit diesem Beispiel kann der Inhalt von Label1 per Drag & Drop 
  in die Edit Felder gefullt werden. 
}


 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;





Copyright © 2004-2016 "Delphi Sources". Delphi World FAQ




Группа ВКонтакте   Ссылка на Twitter   Группа на Facebook