本帖最后由 LAZIJIDING 于 2010-08-30 16:20:42 编辑

解决方案 »

  1.   

    procedure TForm1.FTP;
    表示FTP是TForm1的一个方法(也可以叫成员方法)
    如果是用private修饰的则只能在本类中访问
    如果是用public修饰的引用TForm1后可以访问procedure FTP;
    算是一个局部的方法吧,只能在本单元访问它,而且只能在它后面才能访问它。
    它不是TForm1的成员,也就是说它不能访问直接访问TForm1的属性或方法。
    所以你访问TForm1的IdFTP1时会报错。
    正确的访问是应该先创建一个TForm1的实例,通过实例去访问IdFTP1
      

  2.   

    补充一点
    procedure FTP;
    这样的函数如果在interface下有声明,则引用了该单元就可以访问。
    否则就像上面说的只能在本单元访问
      

  3.   

    procedure TForm1.lianjieFTP;

    procedure lianjieFTP;当然不一样,但不是函数和过程的问题,而是过程/函数和方法的问题前者是TForm1类内部的方法,可以理解是类里面的过程/函数
    后者则是一个全局过程
    过程procedure 和函数 function 的区别是函数必须要有返回值,而过程则没有
    但它们都可以不属于任何一个类(全局),也都可以属于某个类(一般称为方法)另外你那个错误和过程/函数/方法什么的没有关系,是IdFTP1 这个对象没有定义