在写程序的过程中,我使用ADO查询远程数据库,在DBGrid中现实查询的结果,同时,在DBGrid中设置右键菜单,当DBGrid没有获得查询结果的时候,会跳出右键菜单这个过程,这时候加了Exit这个过程,编译的时候提示 :Statement expected, but expression of type 'TBitBtn' found
请问各位大侠,这个问题怎么解决,在线等待

解决方案 »

  1.   

    完全语法上的错误,不是少个;什么的就是少个end什么的咯
      

  2.   

    呵呵,检查过了,不是语法错误,用Abort可以,但用Exit出错。
      

  3.   

    Abort Routine
     
    Raises a silent exception.
     
    Unit 
    SysUtils Syntax 
    [Delphi] procedure Abort();
    Description 
    Use Abort to escape from an execution path without reporting an error.
     
    Abort raises a special "silent exception" (EAbort), which operates like any other exception, but does not display an error message to the end user. Abort redirects execution to the end of the last exception block.
      

  4.   

    Abort 中止当前正在执行的过程,即该过程或函数失效,而Exit 只是结束该过程或函数。 
    Abort和Exit的区别在类的继承关系中区别很明显。 
    Exit仅结束该过程或函数,如果其有继承关系时,还将继续运行子类的部分代码,但是Abort将中止当前正在执行的过程,程序将弹出所有堆栈,程序将不运行任何其他的代码。
      

  5.   

    呵呵,还是用自己的编辑器查出问题了,是定义了一个button,名字不小心定义成Exit了,所以 才会编译通不过,呵呵,Bland这样的错误也查不出来,哎,语法检查还是不是特别到位。
      

  6.   

    估计楼主没学过编译,所有“语法检查还是不是特别到位”的话,其实编译器是检查出来的,但是它只知道有错,却不一定能准确指出错在哪,这也是一个常识了。新出的编译器表现更好一点,但是仍然有这种情况。
    另外:pascal有所谓关键字和保留字,还有系统函数名等,我们取自己的标志符时应该尽量取和他们不一样的,还有名字空间等概念,都是相关的东东