怎样检测一个窗体从打开到关闭其中的内容有没改变?窗体中有Edit、combobox、等,怎样判断里面的内容有没改变?

解决方案 »

  1.   

    定义一个变量
    private
    tempEdit:string;form onshow事件里
    tempEdit:=Edit1.text;form onclose事件里
    if tempEdit<>Edit1.text then
    begin
      ...改动了
    end
    else
    begin
      ...没改动
    end;
      

  2.   

    var
      i: Integer;
      TempCom: TComponent;
    begin
      for i := 0 to Form.ComponentCount - 1 do //循环form上面的控件
      begin
        TempCom := Form.Components[i];
        if TempCom is TEdit then //如果是edit控件
          TEdit(TempCom).Text //记录这个值在ini或者其它文件中
       if .....
      end;最后退出的时候在读取文件中保存的值与当前控件中的值比较
      

  3.   

    form窗体有个 tag属性,当你文本框内容变化时,设定这个tag=1 ,关闭的时候检查它就可以了,我就是这样控制的。