Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.07.08;
Скачать: CL | DM;

Вниз

Есть задача - Помогите пожалуйста!   Найти похожие ветки 

 
DOG-ON-RUN   (2002-06-27 02:09) [0]

Есть задача:
Компонент RichEdit…
В нем есть текст, в каждой строчке по три слова разделенных одним пробелом:
qwe rt yuiop
a sdfghj kl
zxcvb n m
Нужно выровнять этот текст так, чтобы стало три ровных столбика:
qwe--------rt------------yuiop
a------------sdfghj------kl
zxcvb------n------------m
Что-то вроде этого (Вместо черточек можно использовать пробелы, но лучше как-то с помощью программной линейки какой-нибудь…)
Длинна слов при этом неизвестна и количество таких строчек тоже!
Вот и вся моя проблема… Целый день сижу думаю…
Помогите пожалуйста, очень прошу!


 
MBo ©   (2002-06-27 06:47) [1]

Шрифт моноширинный!!! (Courier, например)
Для других придется использовать Canvas.TextWidth, но абсолютно точно все равно не получится

procedure TForm1.Button1Click(Sender: TObject);
var
i,j : integer;
slist:tstringlist;
s:string;
begin
slist:=tstringlist.create;
for i:=0 to richedit1.lines.count-1 do begin
slist.commatext:=richedit1.lines[i];
s:="";
for j:=0 to slist.count-2 do
s:=s+slist[i]+StringOfChar(" ",12-length(slist[i]));
//предполагается, что слова не длиннее 11 символов
s:=s+slist[slist.count-1];
richedit1.lines[i]:=s;
end;
slist.free;
end;



Страницы: 1 вся ветка

Текущий архив: 2002.07.08;
Скачать: CL | DM;

Наверх




Память: 0.46 MB
Время: 0.014 c
1-23608
Sirus
2002-06-24 08:12
2002.07.08
Как закрыть TQuickRep... Отчет создается, работае, но не хочет...


3-23449
Kombat
2002-06-11 15:04
2002.07.08
БД со статической информацией


3-23487
SergSerg
2002-06-15 17:34
2002.07.08
Update SQL


7-23815
Рамиль
2002-04-11 10:45
2002.07.08
Обмен данными по СОМ порту


4-23840
KarlovAF
2002-05-06 05:40
2002.07.08
Как убрать форму из панели задач?