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

TMemo

Добавлено: 18 окт 2009, 19:38
Виктория01
Ув. программисты!!! У меня к Вам огромная просьба! Помогите, ПОЖАЛУЙСТА, разобраться с TMemo. :confused:

У меня задание вот такое:

Дано фрагмент текста (TMemo). Нужно сформировать список(ListBox) всех слов, что находяться в этом тексте.

Вот что я пыталась, но как далеше - не пойму(((((
[syntax="Delphi"]
procedure TForm1.Button1Click(Sender: TObject);
var i, k : integer;
begin
listbox1.Clear;
k:=0;
for i:=1 to length(memo1.Text) do \\ смотрим весь текст
if (memo1.Text<>' ')and(memo1.Text[i-1]<>'.') then \\ если текст не равен пробелу и точке
ListBox1.Items.Add(Memo1.text); \\ переписываем его в ListBox1 (вот тут и работает оно не правильно: просто переписывает ВЕСЬ текст и с пробелами, и с точками несколько раз)
end;
[/syntax]


ПОМОГИТЕ плз :(

Re: TMemo

Добавлено: 18 окт 2009, 19:59
Newbie
1. length(memo1.Text) много больше чем кол-во слов в тексте
2. разве memo1.Text возвращает слово?

на счет второго могу ошибаться, но 1 точно ошибка.

Re: TMemo

Добавлено: 18 окт 2009, 21:11
Duncon
Читаем правила раздела, в след раз удалю.

Re: TMemo

Добавлено: 24 окт 2009, 05:33
BHy4ok
На форму кинешь батон, листбокс и мемо.
[syntax='Delphi']
procedure TForm1.Button1Click(Sender: TObject);
var
s,Source:string;
i:integer;
begin
Source:=Memo1.Text;
s := '';
i := 1;
while i<= Length (Source) do
begin
if Source <> ' '
then s := s+ Source;
if (source=' ')
then
begin
ListBox1.Items.Add(s);
s := '';
end;
inc(i);
end;
ListBox1.Items.Add(s);
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
Memo1.Clear;
ListBox1.Clear;
end;
[/syntax]