Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 23.12.2011, 12:02   #1
artemavd
Старожил
 
Аватар для artemavd
 
Регистрация: 05.06.2008
Сообщений: 4,206
Вопрос Перенос значений из ListBox в Memo через разделитель

Добрый вечер! Нужна помощь с одним вопросиком. Нужно значения из ListBox перенести в Memo и разделить их ",". Нужно, чтобы после последнего значения, внесенного в Мемо, не было в конце запятой. Мои наброски:
Код:
procedure TForm1.btn6Click(Sender: TObject);
var
 i: integer;
 l: TStringList;
begin
 i:=0;
 for i := 0 to Form1.sListBox12.Items.Count - 1 do
 begin
  l:=TStringList.Create;
  l.Delimiter:=',';
  l.Add(Form1.sListBox12.Items[i]);
  l.SaveToFile('test.txt');
  l.Free;
  Form1.sMemo6.Lines.LoadFromFile('test.txt');
 end;
end;
Не работает. Заносит в мето только последнее значение. Подскажите как надо правильнее записать? Заранее спасибо за помощь.
Не стоит смеяться над человеком делающим шаг назад, возможно он делает разбег.
artemavd вне форума Ответить с цитированием
Старый 23.12.2011, 12:10   #2
Johnson
кривокодер ;)
Форумчанин
 
Аватар для Johnson
 
Регистрация: 20.06.2008
Сообщений: 707
По умолчанию

Код:
procedure TForm1.btn6Click(Sender: TObject);
var
 i: integer;
begin
 for i := 0 to Form1.sListBox12.Items.Count-1 do begin
	Form1.sMemo6.Text:=Form1.sMemo6.Text + Form1.sListBox12.Items[I].Caption;
	if I < Form1.sListBox12.Items.Count-1 then Form1.sMemo6.Text:=Form1.sMemo6.Text + ',';
 end;
end;
"А как написать праграму?, "ришыти задачьку очинь нада" ©с форума. Жить становится интереснее, жить становится веселее...
{Быть или не быть} {Неуспешный суицид}
Johnson вне форума Ответить с цитированием
Старый 23.12.2011, 13:28   #3
SERG1980
Участник клуба
 
Аватар для SERG1980
 
Регистрация: 28.03.2007
Сообщений: 1,814
По умолчанию

Цитата:
Сообщение от artemavd Посмотреть сообщение
Добрый вечер! Нужна помощь с одним вопросиком. Нужно значения из ListBox перенести в Memo и разделить их ",". Нужно, чтобы после последнего значения, внесенного в Мемо, не было в конце запятой. Мои наброски:
Код:
procedure TForm1.btn6Click(Sender: TObject);
var
 i: integer;
 l: TStringList;
begin
 i:=0;
 for i := 0 to Form1.sListBox12.Items.Count - 1 do
 begin
  l:=TStringList.Create;
  l.Delimiter:=',';
  l.Add(Form1.sListBox12.Items[i]);
  l.SaveToFile('test.txt');
  l.Free;
  Form1.sMemo6.Lines.LoadFromFile('test.txt');
 end;
end;
Не работает. Заносит в мето только последнее значение. Подскажите как надо правильнее записать? Заранее спасибо за помощь.
Это потому что вы в цикл занесли эти строки
Код:
 l:=TStringList.Create;
  l.Delimiter:=',';
.......
 l.SaveToFile('test.txt');
  l.Free;
Попробуйте так
Код:
procedure TForm1.Button1Click(Sender: TObject);
var sl:TStringList;
    del:char;
    i:integer;
begin
 del:=',';
 sl:=TStringList.Create;
 sl.Delimiter:=del;
 sl.Assign(ListBox1.Items);
 sl.DelimitedText:=sl.Text;
 memo1.Lines.Assign(sl);
 FreeAndNil(sl);
 for I := 0 to memo1.Lines.Count-2 do memo1.Lines[i]:=memo1.Lines[i]+',';
end;
SERG1980 вне форума Ответить с цитированием
Старый 23.12.2011, 13:28   #4
phomm
personality
Старожил
 
Аватар для phomm
 
Регистрация: 28.04.2009
Сообщений: 2,882
По умолчанию

Эээм, а что записывать в файл в цикле это так и задумано, создавать стринглист в цикле, это тоже занятно.

Код:
procedure TForm1.btn6Click(Sender: TObject);
var
 i: integer;
 l: TStringList;
begin
  L:=TStringList.Create;
  L.Delimiter:=',';
  for i := 0 to Form1.sListBox12.Items.Count - 1 do
    L.Add(Form1.sListBox12.Items[i]);
  Form1.sMemo6.Text := L.Text;
  L.Free;
end;

Последний раз редактировалось phomm; 23.12.2011 в 13:32.
phomm вне форума Ответить с цитированием
Старый 23.12.2011, 17:00   #5
artemavd
Старожил
 
Аватар для artemavd
 
Регистрация: 05.06.2008
Сообщений: 4,206
По умолчанию

Всем спасибо за помощь . Попробовал разные варианты, помогло в решении проблемы.
Не стоит смеяться над человеком делающим шаг назад, возможно он делает разбег.
artemavd вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Перенос по словам в ListBox nikolai_P Microsoft Office Excel 2 25.01.2013 12:08
Перенос строки Memo hitman1234 Помощь студентам 4 24.05.2011 16:22
Вывести из массива через разделитель sergeyrulit PHP 2 05.01.2011 15:56
Memo, перенос строк Dominatorsha Помощь студентам 4 29.12.2010 17:30
разделитель в поле memo wulf17 Помощь студентам 1 27.07.2009 10:50