zoukankan      html  css  js  c++  java
  • ini写配置信息

    //列表框
    //文本框
    //编辑框
    //组合框
    //单选框
    //检查框
     
    unit Unit1; 

    interface 

    uses 
      Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, 
      Dialogs, StdCtrls, ExtCtrls; 

    type 
      TForm1 = class(TForm) 
        ListBox1: TListBox; 
        Button1: TButton; 
        Button2: TButton; 
        Memo1: TMemo; 
        Button3: TButton; 
        Button4: TButton; 
        ComboBox1: TComboBox; 
        Edit1: TEdit; 
        CheckBox1: TCheckBox; 
        CheckBox2: TCheckBox; 
        RadioGroup1: TRadioGroup; 
        ComboBox2: TComboBox; 
        Button5: TButton; 
        Button6: TButton; 
        Button7: TButton; 
        procedure Button3Click(Sender: TObject); 
        procedure Button4Click(Sender: TObject); 
        procedure Button1Click(Sender: TObject); 
        procedure Button2Click(Sender: TObject); 
        procedure FormCreate(Sender: TObject); 
        procedure FormClose(Sender: TObject; var Action: TCloseAction); 
        procedure Button5Click(Sender: TObject); 
        procedure Button6Click(Sender: TObject); 
        procedure ComboBox1Change(Sender: TObject); 
      private 
        { Private declarations } 
      public 
        { Public declarations } 
      end

    var 
      Form1: TForm1; 

    implementation 
     uses IniFiles; 
    {$R *.dfm} 

    var iniPath:string;//ini路径 
        fName:string;  //ini的文件名 
    procedure ListBoxToINI(const AINIFile, ASection: string; ListBox: TListBox); 
    var 
      INI: TINIFile; 
      I: Integer; 
    begin 
      INI := TINIFile.Create(AINIFile); 
      try 
        INI.EraseSection(ASection); 
        INI.WriteInteger(ASection, 'Count', ListBox.Items.Count); 
        for I := 0 to ListBox.Items.Count - 1 do 
        begin 
          INI.WriteString(ASection, 'Item' + IntToStr(I), ListBox.Items[I]); 
        end
      finally 
        INI.Free; 
      end
    end

    procedure INIToListBox(const AINIFile, ASection: string; ListBox: TListBox); 
    var 
      INI: TINIFile; 
      I, Count: Integer; 
    begin 
      INI := TINIFile.Create(AINIFile); 
      try 
        Count := INI.ReadInteger(ASection, 'Count', 0); 
        for I := 0 to Count - 1 do 
        begin 
          ListBox.Items.Add(INI.ReadString(ASection, 'Item' + IntToStr(I), '0')); 
        end
      finally 
        INI.Free; 
      end
    end

    procedure MemoToINI(const AINIFile, ASection: string; Memo: TMemo); 
    var 
      INI: TINIFile; 
      I: Integer; 
    begin 
      INI := TINIFile.Create(AINIFile); 
      try 
        INI.EraseSection(ASection); 
        INI.WriteInteger(ASection, 'Count', Memo.Lines.Count); 
        for I := 0 to Memo.Lines.Count - 1 do 
        begin 
          INI.WriteString(ASection, 'Item' + IntToStr(I), Memo.Lines[I]); 
        end
      finally 
        INI.Free; 
      end
    end

    procedure INIToMemo(const AINIFile, ASection: string; Memo: TMemo); 
    var 
      INI: TINIFile; 
      I, Count: Integer; 
    begin 
      INI := TINIFile.Create(AINIFile); 
      try 
        Count := INI.ReadInteger(ASection, 'Count', 0); 
        for I := 0 to Count - 1 do 
        begin 
          Memo.Lines.Add(INI.ReadString(ASection, 'Item' + IntToStr(I), '0')); 
        end
      finally 
        INI.Free; 
      end
    end

    {write ini} 
    procedure TForm1.Button1Click(Sender: TObject); 
    begin 
      fName:=ComboBox1.Text; //// 
      iniPath:=GetCurrentDir()+format('\%s.ini',[fName]); 
      ListBoxToINI(iniPath,'列表框1',ListBox1); 
    end

    {read ini} 
    procedure TForm1.Button2Click(Sender: TObject); 
    begin 
      fName:=ComboBox1.Text; //// 
      iniPath:=GetCurrentDir()+format('\%s.ini',[fName]); 
      ListBox1.Clear;//// 
      INIToListBox(iniPath,'列表框1',ListBox1); 
      memo1.Text:=iniPath; 
    end

    procedure TForm1.Button3Click(Sender: TObject); 
    begin 
     ListBox1.Items:=memo1.Lines; 
    end

    procedure TForm1.Button4Click(Sender: TObject); 
    begin 
      listbox1.Clear; 
    end




    procedure TForm1.FormCreate(Sender: TObject); 
    begin 
       Button6.Click; 
    end

    procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction); 
    begin 
      ///角色名<>空 
       Button5.Click; 
    end

    procedure TForm1.Button5Click(Sender: TObject); 
    var MyIniFile: TIniFile; 
    begin 
      ////////////////////INI////////////////////////// 
        fName:=ComboBox1.Text; //// 
        iniPath:=GetCurrentDir()+format('\%s.ini',[fName]); 
        MyIniFile := TIniFile.Create (iniPath); 
        try 
          //////////////////////////////////////////// 
          MyIniFile.WriteInteger ('Settings', 'Top', form1.Top); 
          MyIniFile.WriteInteger ('Settings', 'Left', form1.Left); 
          //////////////////////////////////////////// 
          MyIniFile.WriteString('Settings', 'Edit1', Edit1.text); 
          MyIniFile.WriteString('Settings', 'ComboBox2', ComboBox2.text); 
          MyIniFile.WriteBool('Settings', 'CheckBox1', CheckBox1.Checked); 
          MyIniFile.WriteBool('Settings', 'CheckBox2', CheckBox2.Checked); 
          MyIniFile.WriteInteger('Settings', 'RadioGroup1', RadioGroup1.ItemIndex); 
         /////////////ThisIsListBox//////////////////////// 
           ListBoxToINI(iniPath,'列表框1',ListBox1); 

           MemoToINI(iniPath,'文本框',Memo1); 
         /////////////ThisIsListBox//////////////////////// 
        Finally 
          MyIniFile.Free; 
        end
      ////////////////////INI////////////////////////// 
    end

    procedure TForm1.Button6Click(Sender: TObject); 
    var  MyIniFile: TIniFile; 
    begin 
      ////////////////////INI////////////////////////// 
        fName:=ComboBox1.Text; //// 
        iniPath:=GetCurrentDir()+format('\%s.ini',[fName]); 
        MyIniFile := TIniFile.Create(iniPath); 
        try 
          //////////////////////////////////////////// 
          form1.Top := MyIniFile.ReadInteger('Settings','Top',form1.Top); 
          form1.Left:= MyIniFile.ReadInteger('Settings','Left',form1.Left); 
          //////////////////////////////////////////// 
          Edit1.text:=MyIniFile.ReadString('Settings', 'Edit1', Edit1.text); 
          ComboBox2.text:=MyIniFile.ReadString('Settings', 'ComboBox2', ComboBox2.text); 
          CheckBox1.Checked:=MyIniFile.ReadBool('Settings', 'CheckBox1', CheckBox1.Checked); 
          CheckBox2.Checked:=MyIniFile.ReadBool('Settings', 'CheckBox2', CheckBox2.Checked); 
          RadioGroup1.ItemIndex:=MyIniFile.ReadInteger('Settings', 'RadioGroup1', RadioGroup1.ItemIndex); 
          /////ThisIsListBox////////////////////////////////// 
           ListBox1.Clear;//// 
           INIToListBox(iniPath,'列表框1',ListBox1); 
           Memo1.Clear; 
           INIToMemo(iniPath,'文本框',Memo1); 
          /////ThisIsListBox////////////////////////////////// 
        Finally 
          MyIniFile.Free; 
        end
      ////////////////////INI////////////////////////// 
       
    end

    procedure TForm1.ComboBox1Change(Sender: TObject); 
    begin 
      //角色名改变后才读取 
      //角色名<>空 
      //角色的Hpmin<>0 
      if ComboBox1.Text<>'' then Button6.Click; 
    end

    end.
     
     
     
     
     





    附件列表

  • 相关阅读:
    年末deadline汇总
    [线性代数]2016.12.19周一作业
    [线性代数]2016.12.15周四作业
    Android SDK的安装与环境变量的配置
    安装JDK环境变量的配置
    Python中单引号,双引号,三引号
    带有支付功能的产品如何进行测试
    Android稳定性测试工具Monkey的使用
    mysql数据库单表增删改查命令
    svn
  • 原文地址:https://www.cnblogs.com/xe2011/p/2543048.html
Copyright © 2011-2022 走看看