Edit等控件都有OnChange事件,我想在StringGrid中也加上,好判断用户是否修改了内容,有什么简便的方法吗?

解决方案 »

  1.   

    最佳方案:自己从StringGrid继承过来一个新StringGrid控件,在其中声明一个OnChange事件。
      

  2.   

    OnKeyUp, OnKeyPress之类也可以达到 OnChange的目的
      

  3.   

    能不能详细一点啊,最好在代码改变内容时也触发OnChange事件。
      

  4.   

    这个问题有点意思
    感觉就想骑驴找驴的感觉~~~~~~~~~~~~~~~~~~~~~~
    这是TStringList的实现
    ~~~~~~~~~~~~~~~~~~~~~~
    property OnChange: TNotifyEvent read FOnChange write FOnChange;procedure TStringList.Changed;
    begin
      if (FUpdateCount = 0) and Assigned(FOnChange) then
        FOnChange(Self);
    end;procedure TStringList.Clear;
    begin
      if FCount <> 0 then
      begin
        Changing;
        Finalize(FList^[0], FCount);
        FCount := 0;
        SetCapacity(0);
        Changed;
      end;
    end;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    是不是这种味道?
      

  5.   

    不明白楼上的意思。你说的和老者说的是一样的吧?那什么时候该调用Changed? 实现的细节并不重要,关键是方法。
      

  6.   

    楼主如果对StringGrid加OnChange事件,是在编集状态击发,
    可用OnGetEditText試試。
    如果真加OnChange事件、并不好控制、因为各个Cell間的移動、
    可否修正等属性都是変数。