程序使用了一些ado连接控件,及一个timer控件(每几秒的间隔),正常情况开者并登陆内网程序的电脑,正常,但一旦局域网断,或者电脑拔掉网线,程序就会不停跳出“连接失败”的窗体。太烦人,如何只条一次“连接失败”的窗体(或者干脆断网后也不跳)?

解决方案 »

  1.   

    你可以检测一下网络是否连接,如果不连接就把timer设置成false
      

  2.   

    用Try语句。
    在Timer事件中加上Try,如果有异常,就将Timer设置成False。
      

  3.   

    好像不行哦,代码如下:
    if not Form1.ABC.Connected then
      begin
       Timer1.enabled:=false;
      end
      else
      begin
       Timer1.enabled:=true;
      end;

    if not adoquery1.active then
      begin
       Timer1.enabled:=false;
      end
      else
      begin
       Timer1.enabled:=true;
      end;
    好像不管用!!!!!!
      

  4.   

    一句话判断网络是否联通uses WinInet;procedure TForm1.Button1Click(Sender: TObject);
    begin
      if InternetGetConnectedState(nil, 0) then ShowMessage('已连接');
    end;