Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2007.09.30;
Скачать: [xml.tar.bz2];

Вниз

Как загрузить из INI список секций в ComboBox?   Найти похожие ветки 

 
Lyberzon ©   (2007-09-03 14:03) [0]

Уважаемые Мастера! Подскажите, как загрузить из INI-файла список секций в ComboBox?


 
MBo ©   (2007-09-03 14:06) [1]

я в хелп по TiniFile и по TRegIniFile заглянул, и нашел метод ReadSections


 
lyberzon ©   (2007-09-03 14:33) [2]

Да я тоже это читал, вот только у ComboBox-а нет св-ва Strings, а попытка создать переменную класса TStrings вызывает ошибку выхода за пределы памяти. Как быть?


 
Denis_ ©   (2007-09-03 14:36) [3]

ComboBox-а Items, вообще-то


 
Reindeer Moss Eater ©   (2007-09-03 14:38) [4]

property Items : TStrings


 
Сергей М. ©   (2007-09-03 14:38) [5]


> у ComboBox-а нет св-ва Strings


Зато есть Items.


> попытка создать переменную класса TStrings вызывает ошибку
> выхода за пределы памяти


Ой не выдумывай)

Написав где-то MyVar: TStrings ты тем самым в ран-тайм создал ту самую переменную, и таких ошибок при этом никогда не возникнет.


 
lyberzon ©   (2007-09-03 14:43) [6]

т.е. так не работает:
procedure TWizardForm1.Button1Click(Sender: TObject);
var
 Ini: TIniFile;
 Sections: TStrings;
begin
 Ini:=TIniFile.Create(ExtractFilePath(Application.ExeName)+"sample.ini");
 Sections:=TStrings.Create;
 Ini.ReadSections(Sections);
 ComboBox1.Items.AddStrings(Sections);
 Sections.Free;
 Ini.Free;
end;


 
Reindeer Moss Eater ©   (2007-09-03 14:44) [7]

Ini.ReadSections(ComboBox1.Items);


 
lyberzon ©   (2007-09-03 14:46) [8]

Чего-то я зашпарился.. Спасибо всем!!!


 
Сергей М. ©   (2007-09-03 15:01) [9]


> Sections:=TStrings.Create;


Это не создание переменной.


> var
>  Sections: TStrings;


А вот это как раз оно самое.

Прочувствуй разницу).


 
lyberzon ©   (2007-09-04 13:55) [10]

Да, а тогда зачем ему метод Create?


 
Сергей М. ©   (2007-09-04 14:04) [11]


> зачем ему метод Create?


Кому "ему" ?

Попробуй сам себе ответить на этот вопрос ...


 
Jeer ©   (2007-09-04 14:16) [12]


> lyberzon ©   (04.09.07 13:55) [10]



> Да, а тогда зачем ему метод Create?
>


Для использования вне TIniFiles.

*.ReadSections по сути делает Assign.
В экземпляре TIniFiles существует fSections: TStringList.
Поэтому ReadSections инициализирует (создает) объявленную тобой объектную переменную Sections: TStrings и копирует данные из внутреннего списка fSections.


 
MBo ©   (2007-09-04 14:27) [13]

>lyberzon ©   (04.09.07 13:55) [10]
>Да, а тогда зачем ему метод Create?

Это тебе указали на неверную терминологию.
Конструктор Create создает экземпляр объекта, на который ссылается переменная.


 
lyberzon ©   (2007-09-04 16:48) [14]

Ну спасибо! Хоть просветили. Еще раз всех благодарю за помощь!



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2007.09.30;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.48 MB
Время: 0.436 c
6-1167326922
KLAUS
2006-12-28 20:28
2007.09.30
WebBrowser F5


9-1161181131
cxvxc
2006-10-18 18:18
2007.09.30
Создать окно которое было бы всегда поверх других?


15-1187189111
Morpheuz
2007-08-15 18:45
2007.09.30
Vista?


2-1188545064
_Iv_
2007-08-31 11:24
2007.09.30
Массив и ресурсы(*.res)


2-1188997579
antonn
2007-09-05 17:06
2007.09.30
операции с массивами





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский