程序是这样的,主窗体上动态创建PageControl,PageControl上动态创建button,button的参数放在ini里,每次启动的时候读取,现在想更改button参数的时候即时生效,应该怎么做?希望高手给段代码,谢谢!

解决方案 »

  1.   

    即时生效?这边把ini改完后,那边的button就变了????不能吧,至少还是需要有个界面或者按钮从ini里面重新读一遍吧!
      

  2.   

    可能我没表达清楚,更改button的参数是程序更改的,不是手动从ini里更改。
      

  3.   

    可能我没表达清楚,更改button的参数是用程序更改的,并不是手动从ini文件里改。
    button的参数包括button的大小,和button之间的距离 等等
      

  4.   

    procedure SaveChangeToINI;
    begin
      //保存更新后的设置到INI文件
    end;procedure ReadSetupFromINI;
    begin
      //从INI读出设置,然后依这些设置刷新窗体
    end;procedure FormCreate;
    begin
      ReadSetupFromINI;
    end;procedure BtnSetupClick;
    begin
      SaveChangeToINI;
      ReadChangeToINI;
    end;
      

  5.   

    就是您说的意思,达到不重启就可以让button更改的参数生效
      

  6.   

    不过不好意思我打错了一句代码procedure BtnSetupClick; 
    begin 
      SaveChangeToINI; 
      ReadChangeToINI; //这句应该是 ReadSetupFromINI;
    end; 
      

  7.   

    噢,具体实施的话请问是重复一遍SetupIni1.WriteInteger再Self.ReadAllFavRcd吗??
      

  8.   

    每次启动的时候读INI
    更改参数后,保存到INI
    刷新的时候再读取INI
    读..写..保存..再读...这很困难吗?
      

  9.   


    具体的代码是需要你自己写的啊procedure SaveChangeToINI; 
    begin 
      //保存更新后的设置到INI文件
      //这里就是把你所有的设置信息写入INI文件的操作,之所以提取出来作为一个过程,是为了代码重用 
    end; procedure ReadSetupFromINI; 
    begin 
      //从INI读出设置,然后依这些设置刷新窗体
      //同上,从INI文件中读出,然后设置,这些也是为了代码重用.... 
    end; procedure FormCreate; 
    begin 
      ReadSetupFromINI; 
    end; procedure BtnSetupClick; 
    begin 
      SaveChangeToINI; 
      ReadSetupFromINI; 
    end; 正如楼上所言。