input  表单元素
a := WebBrowser1.OleObject.document.all.item('name',0); //找到登录用户名的输入框
a.value := 'name;select  表单元素   下来选择的那种
该怎么写???

解决方案 »

  1.   

    automatic fill out HTML forms with TWebBrowser?  { To test this code put a TWebBrowser and A TButton component on the form }
    function FillForm(WebBrowser: TWebBrowser; FieldName: string; Value: string): Boolean; 
    var 
      i, j: Integer; 
      FormItem: Variant; 
    begin 
      Result := False; 
      //no form on document 
      if WebBrowser.OleObject.Document.all.tags('FORM').Length = 0 then 
      begin 
        Exit; 
      end; 
      //count forms on document 
      for I := 0 to WebBrowser.OleObject.Document.forms.Length - 1 do 
      begin 
        FormItem := WebBrowser.OleObject.Document.forms.Item(I); 
        for j := 0 to FormItem.Length - 1 do 
        begin 
          try 
            //when the fieldname is found, try to fill out 
            if FormItem.Item(j).Name = FieldName then 
            begin 
              FormItem.Item(j).Value := Value; 
              Result := True; 
            end; 
          except 
            Exit; 
          end; 
        end; 
      end; 
    end; 
    //When the document is complete try to fill out the field homepage with the url 
    procedure TForm1.WebBrowser1DocumentComplete(Sender: TObject; 
      const pDisp: IDispatch; var URL: OleVariant); 
    begin 
      if FillForm(WebBrowser1, 'homepage', 'http://www.swissdelphicenter.ch') = False then 
        ShowMessage('Error. Field not available or no Form found.');
    end;// Show the Webbrowser-Progress in Label1 
    procedure TForm1.WebBrowser1ProgressChange(Sender: TObject; Progress, ProgressMax: Integer); 
    begin 
      if ProgressMax = 0 then 
      begin 
        label1.Caption := ''; 
        Exit; 
      end; 
      try 
        if (Progress <> -1) and (Progress <= ProgressMax) then 
          label1.Caption := IntToStr((Progress * 100) div ProgressMax) + '% loaded...' 
        else 
          label1.Caption := ''; 
      except 
        on EDivByZero do Exit; 
      end; 
    end; 
    //For example you can load the page /en/addtip.php to the TWebBrowser 
    //When the document is Complete the form where you can put your homepage 
    //address is filled out 
    procedure TForm1.Button1Click(Sender: TObject); 
    begin 
      Webbrowser1.Navigate('http://www.swissdelphicenter.ch/en/addtip.php'); 
      // Show the Titel of the currently active Webpage in the titlebar 
      // Den Titel der aktuellen Webseite in der Titeleiste anzeigen 
      Caption := Webbrowser1.OleObject.Document.Title; 
    end;
      

  2.   

    unit Unit1;interfaceuses
      Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
      Dialogs, StdCtrls, OleCtrls, SHDocVw_TLB, EmbeddedWB,MSHTML;type
      TForm1 = class(TForm)
        EmbeddedWB1: TEmbeddedWB;
        Button1: TButton;
        procedure FormCreate(Sender: TObject);
        procedure Button1Click(Sender: TObject);
      private
        { Private declarations }
      public
        { Public declarations }
      end;var
      Form1: TForm1;implementation{$R *.dfm}procedure TForm1.FormCreate(Sender: TObject);
    begin
      EmbeddedWB1.Navigate('C:\Documents and Settings\Administrator\桌面\index2.htm');
    end;procedure TForm1.Button1Click(Sender: TObject);
    var IDoc1: IHTMLDocument2;
        iELC  : IHTMLElementCollection ;
        i:integer;
        spDisp: IDispatch;
        HtmlSelectEle : IHTMLSelectElement;
        S2 : string;
        oIDocment: IHTMLDocument2;
        IHtmlWin:IHTMLWindow2;
    begin
      oIDocment := EmbeddedWB1.Document as IHTMLDocument2;
      EmbeddedWB1.Document.QueryInterface(IHTMLDocument2,IDoc1);
      if idoc1<>nil then
      begin
        ielc:=idoc1.Get_all;
        for i:=0 to ielc.length-1 do
        begin
          spDisp := ielc.item(i, 0);
          if SUCCEEDED(spDisp.QueryInterface(IHTMLSelectElement ,HtmlSelectEle))then
          with HtmlSelectEle do
          begin
            S2:=Type_;
            S2:=UpperCase(S2);
            if (StrComp(PChar(S2),'SELECT-ONE')=0) then
            begin
              S2:=name;
              if (StrComp(PChar(S2),'D1')=0) then
                 selectedIndex:=1;
            end;
          end;
        end;
      end;
    end;end.这是选择下拉列表框数据的代码.
      

  3.   

    <html><head>
    <title>新建网页 1</title>
    <script>
    function aa(){
     document.all.D1.value="泰国";
    }
    </script>
    </head><body><form method="POST" action="--WEBBOT-SELF--">
      <select size="1" name="D1">
      <option value="中国">中国</option>
      <option value="日本">日本</option>
      </select><p><input type="button" value="按钮" name="B1" onclick="aa()">
      </p>
    </form></body></html>
    这是测试用的Html