//handle select element.
<SELECT NAME="Cats" SIZE="1">
<OPTION VALUE="1">Calico
<OPTION VALUE="2">Tortie
<OPTION VALUE="3" SELECTED>Siamese
</SELECT>
HRESULT IHTMLSelectElement::get_selectedIndex(long *p);HRESULT IHTMLSelectElement::put_selectedIndex(long v);

解决方案 »

  1.   

    哦对不起,所属论坛错放在Visual C++ ,应为Delphi,刚才这位朋友给的定义在Delphi中没有对应项.
      

  2.   

    哦对不起,所属论坛错放在Visual C++,应为Delphi.也许是我还没有讲清,那个组合框中数据我是随便放的,HTML文件只不过是一个模板.也就是说我一调用HTML时,我就要将他们替换成我想添加的值,如改为"A","B","C"等.
      

  3.   

    哦对不起,所属论坛错放在Visual C++,应为Delphi.也许是我还没有讲清,那个组合框中数据我是随便放的,HTML文件只不过是一个模板(我在设计HTML文件时要将其进行压缩处理放入数据库的,所以很精简).也就是说我一调用该HTML文档时,它里面的可选项为"一","二",我就要将他们的值删除并替换成我从数据库中另一数据值,并肯定会增加选项,如"先A","后B","再C","又D"等,其值可能会上百,并在用户选择后,直接返回选择的值.
        请再次解答我的问题,谢谢!
        
      

  4.   

    请问在delphi6.0里面,是不是也可以像可以做:
    //表单上 WebBrowser:TWebBrowsers;Edit1:Tedit
    procedure TWebForm.Button1Click(Sender: TObject); //write
    var iDoc:IHTMLDocument2;
        iELC:IHTMLElementCollection;
        HtmlInputEle : IHTMLInputElement;  //输入文件类型,这里是edit
    //    HTMLSelectEle: IHTMLSelectElement; //输入文件类型,这里是ComboBox
        Disp:IDispatch;
        i:integer;
    begin
      iDoc:=WebBrowser.Document as IHTMLDocument2;
      if iDoc<>nil then
        begin
          iELC:=iDoc.Get_all;
          for i:=0 to iELC.length-1 do
            begin
              Application.ProcessMessages;
              Disp:=iELC.item(i,0);
              if SUCCEEDED(Disp.QueryInterface(IHTMLInputElement ,HtmlInputEle))then
                begin
                  if (CompareText(trim(HtmlInputEle.name),'T0')=0) then
                    HtmlInputEle.value:=edit1.Text;
                end;
            end;
        end;
    end;