Вам нужно прервать цикл после первого нахождения пробела в строке, иначе цикл будет обновлять Edit2 для каждого пробела, вплоть до самого первого. Просто добавьте BREAK после
Код:
Edit2.Text := copy(Edit1.Text, i+1, Length(Edit1.Text)-i);
Получиться должно примерно так:
Код:
if Edit1.Text[i]= ' ' then
begin
Edit2.Text := copy(Edit1.Text, i+1, Length(Edit1.Text)-i);
Break;
end;