我的应用程序中有个小地方显示程序更新信息,我用的WebBrowser控件显读取远程网页显示该信息,Form在加载时调用Navigate,为了不影响整个程序在加载时因为打开网页而停滞,我使用了线程。代码很简单如下:
线程函数:
//打开一个网页
procedure TForm1.NavigateTab1();stdcall;    
begin
     WebBrowser1.Navigate('http://www.baidu.com');
end;
Form创建函数中的调用:
CreateThread(nil,0,@NavigateTab1,nil,0,Tid);编译时出错:
[DCC Error] Main.pas(2745): E2036 Variable required
应该是参数问题,但是我仔细比对,不知道哪错了。请教大家。

解决方案 »

  1.   

    没记错的话,好像相称函数不能是对象的方法吧procedure NavigateTab1();stdcall;   
    begin
      WebBrowser1.Navigate('http://www.baidu.com');
    end;
      

  2.   

    不用在FORM声明:procedure NavigateTab1();stdcall;   
    begin
      Form1.WebBrowser1.Navigate('http://www.baidu.com');
    end;
      

  3.   

    还差一点点procedure NavigateTab1(p: pointer): DWORD; stdcall;
    begin
      Form1.WebBrowser1.Navigate('http://www.baidu.com');
      Result:= 0;
    end;
      

  4.   

    又忘记了,晕,应该是funtion
    funtion NavigateTab1(p: pointer): DWORD; stdcall;
    begin
      Form1.WebBrowser1.Navigate('http://www.baidu.com');
      Result:= 0;
    end;