Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

ПОМОГИТЕ ПЛЗ. [D7, WinXP]


Кирилл_ ©   (2005-11-11 15:05:00) 

Здравствуйте Мастера!
  1)есть ини-файл, там:
            [параметр1]
           n1=3
           n2=1
           n3=1
           ...
           n6=5
           
           [параметр2]
           n1=1
           ...
           n6=3
         и т.д.


  2)есть ListBox на форме

Внимание вопрос: 1)как мне сделать так, чтобы
                  при создании формы в ListBox
                  вписыволись параметры из ини-файла?
       
                      параметр1
                      параметр2

                     и т.д.
                2)и если кликнул по, к примеру, параметр1,
                  и читались из ини-файла n1..n6 данного
                  параметра, затем записывались в переменные?


Digitman   (2005-11-11 15:57:00) [1]

орать "навсюивановскую" тоже не было повода.


Кирилл_   (2005-11-11 15:55:00) [2]

СПАСИБОООООООООООООО!!!!!!!!  :-))


Digitman   (2005-11-11 15:51:00) [3]


> в хелпе я не нашёл


ПЛОХО искал.


Leonid Troyanovsky   (2005-11-11 15:48:00) [4]


> Кирилл_   (11.11.05 15:45) [16]

> А в хелпе я не нашёл! (:-(


Да простят меня модераторы.

The following example reads information from a WIN.INI file into three listboxes on a form.

uses IniFiles;
procedure TForm1.FormActivate(Sender: TObject);

var
 AppIni: TIniFile;
begin
 AppIni := TIniFile.Create('WIN.INI');
 AppIni.ReadSections(ListBox1.Items);
 AppIni.ReadSection('Ports',Listbox2.Items);
 AppIni.ReadSectionValues('Ports',ListBox3.Items);
 AppIni.Free;
end;

--
Regards, LVT.


Кирилл_   (2005-11-11 15:45:00) [5]

procedure TForm1.Button1Click(Sender: TObject);
var
sl: TStrings;
ac: Integer;
begin
sl := TStringList.Create;
ini := TIniFile.Create('baza.ini');
try
 sl.LoadFromFile('baza.ini');
 ini.ReadSections(sl);
 AkCount :=  sl.Count;
 for ac := 0 to AkCount do
     begin
     ListBox1.Items.Add(sl.Strings[ac]);
     end;
finally
 sl.Destroy;
 ini.Destroy;
end;
end;

Это почемуто не работает :-(
А в хелпе я не нашёл! (:-(


Кирилл_   (2005-11-11 15:39:00) [6]

Сделал создание, теперь что-то со StringList; Out of Bounds(0)


Leonid Troyanovsky   (2005-11-11 15:39:00) [7]


> Кирилл_   (11.11.05 15:36) [11]
> А где? Подскажите плз.


Я и так повторяюсь.
Читай хелп - он кладезь знаний.

--
Regards, LVT.


Digitman   (2005-11-11 15:38:00) [8]

а где создание объекта класса TIniFile ?


Кирилл_   (2005-11-11 15:36:00) [9]

А где? Подскажите плз.


Digitman   (2005-11-11 15:36:00) [10]

а где создание объекта класса TIniFile ?


Leonid Troyanovsky   (2005-11-11 15:35:00) [11]


> Кирилл_   (11.11.05 15:31) [8]
> У меня вот здесь ошибка:


Ошибка не здесь, а раньше.

Газеты надо читать.

--
Regards, LVT.


Кирилл_   (2005-11-11 15:34:00) [12]

var
sl: TStrings;
ac: Integer;
begin
sl := TStringList.Create;
try
 sl.LoadFromFile('baza.ini');
 ini.ReadSections(sl);
 ACount :=  sl.Count;
 for ac := 0 to ACount do
     begin
     ListBox1.Items.Add(sl.Strings[ac]);
     end;
finally
 sl.Destroy;
end;
end;

Вот что я написал


Кирилл_   (2005-11-11 15:31:00) [13]

У меня вот здесь ошибка:

> MyIniFile.ReadSections(sl);

EAcsesViolation


Leonid Troyanovsky   (2005-11-11 15:21:00) [14]


> Кирилл_   (11.11.05 15:15) [3]
> Пожалуйста, если можно, поподробней


Help - Delphi Help - Find - вставить:

ReadSection, ReadSections, ReadSectionValues example

--
Regards, LVT.


Кирилл_   (2005-11-11 15:20:00) [15]

Спасибо! Я понял


Digitman   (2005-11-11 15:19:00) [16]

var
 sl: TStrings;

..

sl := TStringList.Create;
try
..
 MyIniFile.ReadSections(sl);
 ShowMessage(IntToStr(sl.Count));
..
finally
 sl.Free;
end;


Кирилл_   (2005-11-11 15:16:00) [17]

А как мне узнать, сколько этих секций всего?


Кирилл_   (2005-11-11 15:15:00) [18]

Пожалуйста, если можно, поподробней


Digitman   (2005-11-11 15:14:00) [19]


>  [параметр1]


это не "параметр", это секция

для чтения имен секций существует метод   TIniFile.ReadSections

n1= 3

то что выделено курсивом - имя параметра (Name)

для чтения имен параметров в указанной секции существует метод TIniFile.ReadSection

то что выделено жирным - значение параметра (Value)

для чтения значений параметров в указанной секции существует метод TIniFile.ReadSectionValues


Leonid Troyanovsky   (2005-11-11 15:13:00) [20]


> Кирилл_   (11.11.05 15:05)  

> Внимание вопрос: 1)как мне сделать так, чтобы
>                   при создании формы в ListBox
>                   вписыволись параметры из ини-файла?


VCL Reference
ReadSection, ReadSections, ReadSectionValues example

--
Regards, LVT.


Наверх

Титульная страница Поиск, карта сайта Написать письмо