Страница 1 из 1

Работа с OpenDialog

Добавлено: 09 ноя 2010, 23:00
Dark_anamnesis
Здраствуйте, такая проблема, как объявить переменную list в которую загружается открываемый текстовый файл, что бы она была видна другой функции??

Код: Выделить всё

TOpenDialog OpenDialog1 = new TOpenDialog(this);
OpenDialog1->Filter = "Текстовые файлы|*.txt";
 if (!OpenDialog1->Execute()) return;
  TStringList *list = new TStringList;

 list->LoadFromFile(OpenDialog1->FileName);


Re: Работа с OpenDialog

Добавлено: 10 ноя 2010, 12:57
Decoder
Сейчас твоя переменная создаётся локально внутри метода. А тебе нужно сделать её членом класса, т.е. перенести её из процедуры в заголовочный файл твоего класса.

Re: Работа с OpenDialog

Добавлено: 10 ноя 2010, 12:59
Dark_anamnesis
Окей, а как это сделать?

Re: Работа с OpenDialog

Добавлено: 10 ноя 2010, 13:28
BulldozerBSG
ручками, IDE за тебя это делать не будет.

Re: Работа с OpenDialog

Добавлено: 10 ноя 2010, 16:30
Decoder
ручками, IDE за тебя это делать не будет.
Ну почему же? В Delphi и в C++ Builder довольно мощная визуальная среда разработки. Если уж такой визард имеется в Visual C++, который добавляет в класс переменные и методы, то для платформы VCL это должно быть само собой разумеющимся.
Объявление самой переменной (TStringList *list;) нужно будет разместить в заголовке класса.
Из локальной процедуры нужно будет перенести операцию создания объекта (list = new TStringList;) в конструктор класса, а операцию удаления (delete list) - в деструктор класса.
Вот собственно и всё.

Re: Работа с OpenDialog

Добавлено: 10 ноя 2010, 21:52
Dark_anamnesis
Спасибо за ответ))) Не то, что тут всякие КЕПы ходят, и высказывают свое мнение, правда до решения дошел сам)))