AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi Javascript mit delphi möglich?
Thema durchsuchen
Ansicht
Themen-Optionen

Javascript mit delphi möglich?

Ein Thema von NightFox · begonnen am 13. Dez 2006 · letzter Beitrag vom 14. Dez 2006
 
shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#2

Re: Javascript mit delphi möglich?

  Alt 13. Dez 2006, 18:27
Folgendes ist programiertechnisch über TWebBrowser möglich:
* einen Button auf der Webseite anklicken
* Eingabefelder mit Text befüllen
* Checkboxen an- oder abkreuzen
* Comboboxen auswählen
Nicht möglich ist z.B. ein Dateiupload durch Vorgabe eines Dateinamens. (aus Sicherheitsgründen)

Hier kommt mal ein grosses Stück Code, das zeigt wie man Editboxen in Webseiten mit TEXT befüllt.
Du musst aber schon selber etwas mitdenken und Forschungsarbeit betreiben.
Delphi-Quellcode:
function TFrmHTMLUpload.FillForm(WebBrowser: TWebBrowser; submit:Boolean) : Boolean;
var
  i,j:Integer;
  FormItem, Element : OleVariant;
  document : OleVariant;

  itemtype, itemname : string;
  r, maxlen, selcount, postcount : Integer;

  value2 : string;
begin

   document := WebBrowser.OleObject.document;

   //no form on document
   If document.all.tags('FORM').length=0 then
   begin
    exit;
   end;

   postcount := 0;

   //count forms on document
   for I:=0 to document.forms.Length -1 do
   begin
      Result:=false;
      FormItem := document.forms.Item(I);
      For j:= 0 to FormItem.Length-1 do
      begin
         Element := FormItem.Item(j);
         itemname := Element.Name;

         itemtype := UpperCase(Element.Type);

         value2 := '';
         
         if itemname='USERNAMEthen
            value2 := 'administrator'
         else if itemname='PASSWORTthen
            value2 := 'geheim';


        if value2 <> 'then
        begin
         if (itemtype = 'TEXT') then
         begin
            maxlen := Element.MaxLength;
            Element.Value:= Copy(value2, 1, maxlen);
         end else if (itemtype = 'RADIO') then
         begin
            Element.Checked := Copy(value2, 1, 1) = '*';
         end
         else
            Element.value := value2;
         Inc(postcount);
        end;

        if (itemtype = 'SELECT-ONE') and (value2 = '') then
        begin
           // TODO: check options.count

           selcount := Element.options.Length;
           Element.value := Element.options.Item(system.Random(selcount)).value;
        end
        else if itemtype = 'CHECKBOXthen
        begin
           if system.Random > 0.5 then
              Element.Checked := True;
        end;


      end;

      if (not submit) and (postcount > 0) then
         Exit;

      if submit and (postcount > 0) then
      begin
         SubmitWebForm(FormItem);
         Exit;
      end;
   end;
end;
Andreas
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:13 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz