控件的事件默认写在本单元中,我想写在其它的单元,能否做到?
说明:不希望通过象 OnClick=form2.myClick;之类的转向语句完成,把事件像单元之间引用变量那样.

解决方案 »

  1.   

    从类定义的语法上看,事件就是一类定义在published段的特殊属性(property),一般命名为OnXXX
    一个类只能定义在一个单元中
      

  2.   

    UnitPublic声明公共方法procedure Click(sender :Tobject)
    begin
    end;Unit1的按钮1引用此方法,在formcreate事件写上procedure form1.oncreate;
    begin
      button1.onclick := UnitPublic.click
    end;
      

  3.   

       只要参数和返回值相同就可以的!
      比方,你在单元A写了一个相同的方法FA(类的公共方法,单元共享方法都没关系)!
      然后在单元B或单元C中,调用!或者把FA的地址赋给单元B或单元C等等!
      
      想让别的单元C调用你的单元B,你可以传进去
       B.SetFA(xFA:TFA); 
      如果想让你调用别人的单元C,你只能调用了U
       C.FA()  /OnFA=C.FA()