IMyForm = interface
    ['{C95FD9BB-E3F0-4167-A291-E3C1DB4025B0}']
    function ShowModal: Integer;stdcall;
  end;  TMyForm = class(TForm,IMyForm)
  public
    function ShowModal: Integer;stdcall; // 这个怎么写?
  end;我只是想把TForm的方法,暴露到接口 IMyForm 中去便于调用。

解决方案 »

  1.   

    IMyForm = interface
      ['{C95FD9BB-E3F0-4167-A291-E3C1DB4025B0}']
      function ShowModal: Integer;
      end;  TMyForm = class(TForm,IMyForm)
      public
      function ShowModal: Integer; 
      end;
    另外,
    我只是想把TForm的方法,暴露到接口 IMyForm 中去便于调用。
    可以写成activeform 的形式
      

  2.   


    1、如果接口的声明和父类中的方法完全相同,子类可以不实现该接口的方法。
    2、如果接口声明的方法和类中的方法重名,用接口方法名重解析子句来让接口方法映射到类中的另一个不重名的方法上注意,你这里的ShowModal和父类中的ShowModal声明实际是不同的,因为父类中没有stdcall调用协定
      

  3.   

    建议改一下接口函数名字,然后再调用TForm的函数