Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Для новичков > Вывод из ListBox в Мемо


Автор: alekstav 5.1.2011, 15:35
Здравствуйте.
У меня в поле ListBox находится список стран, я хочу чтоб при движении курсора в поле ListBox в Мемо открывалось содержимое файла txt соответственно про каждую страну.
Подскажите, пожалуйста, что исправить в этом коде, чтоб файлы txt конкретных стран можно было положит не в общий каталог программы, а в отдельную папку. Дело в том, что файлов будет много и их лучше сразу рассортировать, а то можно будет запутаться самому.
Этот код работает нормально, но если все файлы лежат в корне программы, если их кладешь в подпапку, программа уже не может найти файлы.
"с:\2\Словарь\Страны\А\123.txt" В этом файле лежат название стран на букву "А" он нужен для заполнения ListBox. В этой же папке лежат файлы с каждой отдельной страной начинающейся с буквы "А". 
Код

begin
  ListBox1.Items.LoadFromFile ('C:\2\Словарь\Страны\А\123.txt');
  ListBox1.ItemIndex := 0;
  ListBox1Click (Sender);
  end;
 
 procedure TForm2.ListBox1Click(Sender: TObject);
begin
  if ListBox1.ItemIndex > -1 then begin
    Memo1.Lines.LoadFromFile (ListBox1.Items[ListBox1.ItemIndex] + '.txt');
  end;
end;



Автор: Mach3 5.1.2011, 16:22
Код

 Memo1.Lines.LoadFromFile (ListBox1.Items[ListBox1.ItemIndex] + '.txt');

На первый взгляд надо так:
Код

 Memo1.Lines.LoadFromFile ('с:\2\Словарь\Страны\А\'+ListBox1.Items[ListBox1.ItemIndex] + '.txt'); //необходимо уточнить директорию

Автор: AntonN 5.1.2011, 17:18
тогда уж:
Код

Memo1.Lines.LoadFromFile( extractfilepath(paramstr(0))+'A\'+ListBox1.Items[ListBox1.ItemIndex] + '.txt'); 


плюс перепроверять ListBox1.ItemIndex на значение -1

Автор: alekstav 5.1.2011, 20:32
Mach3,AntonN Спасибо, все получилось.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)