单元中已有一事件过程procedure DataSource1DataChange(Sender: TObject; Field: TField);在其他事件中如何调用它?

解决方案 »

  1.   

    列举一下哪些事件?
    调用: DataSource1DataChange( DataSource1, 字段对象 );
      

  2.   

    在procedure DataSource1DataChange(Sender: TObject; Field: TField);中写有建立主从表的语句,这些语句在FORM的ONFORMSHOW事件也需要,现在的作法是将DataSource的onDataChange事件的内容全部在FORM的ONFORMSHOW事件中写出,为简化,希望能在onFormShow事件中直接调用DataSource的onDataChange事件
      

  3.   

    可以这样直接调用:
    DataSource1.DataSource1DataChange(Self, BeChangedField);不过,在这个事件中完成建立主从表的语句,可能不大对头哦,如果当前记录变化了,则该记录中有多少个字段,就会触发多少次该事件。在TDateSet.AfterPost或者TDataSet.AfterScroll事件中做主从表的联系,可能是更好的选择。
      

  4.   

    言之无理 :-)根本没有 DataSource1.DataSource1DataChange(Self, BeChangedField);
    一般来说 DataSource1DataChange 是属于窗体的而不是DataSource的。楼主为什么不能在设计时就定好主从关系呢?Delphi自动帮你联动。