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

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

Загрузить с ini файла в переменную имена всех ключей [D7, XP]


worldmen ©   (2008-04-20 23:29:00) 

Нужно с ini файла с определенного раздела загрузить в переменную имена ключей. Например ini-файл:
[Theme]
t0=Тема № 1
t1=Тема № 2
t2=Тема № 3

Чтобы в переменную типа TStrings или массив были имена ключей: t0, t1, t2. Я попробовал так, но пишет ошибку:
Var
  SpisIni: TIniFile;
  Themes : TStrings;

 SpisIni.ReadSection('Theme',Themes );


ReadSection- читает в Strings типа TStrings имена всех ключей раздела Section.
ReadSection(const Section: string; Strings: TStrings)


{RASkov}   (2008-04-21 00:28:00) [1]

> [6] worldmen   (21.04.08 00:18)
> Спасибо, с TStringList намного лучще.

Это не лучше, это правильно, а у тебя нет :)


{RASkov}   (2008-04-21 00:27:00) [2]

> [5] worldmen   (20.04.08 23:58)
> Есть объект TreeView1

У него есть свои методы сохранения/загрузки в/из файл/а


worldmen   (2008-04-21 00:18:00) [3]

Спасибо, с TStringList намного лучще.


worldmen   (2008-04-20 23:58:00) [4]

Попутно скажу зачем мне это все надо. Есть объект TreeView1 в котором в виде дерева расположены "Темы" и "Лаб.раб." в от так:
Тема №1 ....
-лаб №1...
-лаб №2...
Тема №2 ....
-лаб №1...
-лаб №2...
И хранить собираюсь это все в ini файле. В программе это будет добавляться и удаляться (и Темы и Лаб.раб). Получается сильно сложно, может есть другой способ?


Efir   (2008-04-20 23:54:00) [5]


> worldmen   (20.04.08 23:47) [3]


Используй TStringList.


worldmen   (2008-04-20 23:47:00) [6]

Я пробовал так
Themes:=TStrings.Create;  (это 173-я строка)
Но при компиляции пишет :
 [Warning] Unit03.pas(173): Constructing instance of 'TStrings' containing abstract method 'TStrings.Clear'
 [Warning] Unit03.pas(173): Constructing instance of 'TStrings' containing abstract method 'TStrings.Delete'
 [Warning] Unit03.pas(173): Constructing instance of 'TStrings' containing abstract method 'TStrings.Insert'
И при выполнении выводит ошибку. Я неправильно создаю объект?


{RASkov}   (2008-04-20 23:37:00) [7]

...и не забываем про абстрактный класс TStrings...
Объявление Themes : TStrings;верно, а дальше не видно...
т.е. не нужно создавать его экземпляров... в [0] не видно вообще ничего... кто.... как....)


Сергей М,   (2008-04-20 23:30:00) [8]

Объекты нужно создавать, перед тем как обращаться к их методам.


Наверх

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