用TWebBrowser写浏览器,怎样实现网页中的Edit的自动完成功能,即在Edit上双击,就会弹出曾经键入过的内容。各位大侠,拜托拜托!!

解决方案 »

  1.   

    给你一个思路:
    弄一个ComboBox,输入过的地址Add到里面。再放一个照相机控件,存ComboBox的Items到注册表里。双击的时候下拉ComboBox,完事。
      

  2.   

    to ljmanage(过客) 
      .cn
      谢谢!!!!!!
      

  3.   

    to DWGZ() 
      能详细一点吗??????
      

  4.   


    顺便问一下,下面的代码能添加到收藏夹
    procedure TFraIE.AddtoFavorites1Click(Sender: TObject);
    var
      ShellUIHelper: ISHellUIHelper;
      url, title: Olevariant;
    begin
      Title := WebBrowser.LocationName;
      Url := WebBrowser.LocationUrl;
      if Url <> '' then
        begin
          ShellUIHelper := CreateComObject(CLSID_SHELLUIHELPER) as IShellUIHelper;
          ShellUIHelper.AddFavorite(url, title);
        end;
      这里我重新加载程序中的收藏夹内容
    end;但是在WebBrowser上点右键->添加到收藏夹以后,我便没办法处理重新加载程序中的收藏夹内容,
    我想问的是WebBrowser上点右键->[添加到收藏夹]时,有什么事件可以得到吗???
      

  5.   

    ////这是我摘录的,但对IE页面中的edit无效,但能否有类似的解决方法
    使编辑框具有类似IE的自动完成功能
     在shwlapi.dll中有一个函数SHAutoComplete。调用这个函数可以给Edit控件添加自动完成的功能。 注意:调用这个函数前一定要先调用ole初始化函数CoInitialize。下面是例子程序:unit AutoCompleteUnit;interfaceuses Windows, StdCtrls, ComObj;//comobj的初始化部分调用了coInitialize函数,所以等于隐式调用了这个函数Const  SHACF_DEFAULT = $0;  SHACF_FILESYSTEM = $1;  SHACF_URLHISTORY = $2;  SHACF_URLMRU = $4;  SHACF_URLALL = (SHACF_URLHISTORY Or SHACF_URLMRU);  SHACF_AUTOSUGGEST_FORCE_ON = $10000000;  SHACF_AUTOSUGGEST_FORCE_OFF = $20000000;  SHACF_AUTOAPPEND_FORCE_ON = $40000000;  SHACF_AUTOAPPEND_FORCE_OFF = $80000000;function AutoComplete(editField: TEdit; dwFlags: DWORD): Boolean;implementationfunction SHAutoComplete(hwndEdit: HWND; dwFlags: dWord): LongInt;  stdcall; external 'shlwapi.dll';function AutoComplete(editField: TEdit; dwFlags: DWORD): Boolean;begin  Result := (SHAutoComplete(editField.Handle, dwFlags) = 0);end;end.