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

Вниз

Немного глуповат вопрос, но StrLeft не обрабатывает строку.   Найти похожие ветки 

 
IrBisoff ©   (2004-05-15 06:06) [0]

При исполнении этого кода StrLeft срабатывает только в первом контейнере, в остальных же - текст остаётся неизменным. Я даже пробовал убирать все условия и принудительно обрезать - не помогает. =( LastSpace устанавливается во всех случаях верно - следующая строка начинается с последнего пробела... Скорее всего это связано с этим фрагментом: tmp := tmp+Freader.STotalText.Strings[StrGlobNum][StrGlobPos];. Раньше у мну всегда проблемы возникали при посимвольном переносе. =)

 while not FullString do begin
   if Freader.LabelCustom.Canvas.TextWidth(tmp) < Freader.LeftPage.Width - 89 then begin // Если текст ещё помещается в контейнер...

     // Если это ещё не конец строки, то прибавляем букву, если же нет - конец строки
     if StrGlobPos < Length(Freader.STotalText.Strings[StrGlobNum]) then inc(StrGlobPos)
     else begin inc(StrGlobPos); EndGlobString := true; Fullstring := true;end;

     tmp := tmp+Freader.STotalText.Strings[StrGlobNum][StrGlobPos]; // Добавляем символ в строку
     if Freader.STotalText.Strings[StrGlobNum][StrGlobPos] = " " then LastSpace := StrGlobPos; // Если текущий символ - пробел, устанавливаем флаг пробела
   end else begin               // Если уже не помещается...
     Fullstring := true;        // Всего лишь ставим флаг
   end;
 end;

 if not EndGlobString then begin // Если это не конец строки...
   StrGlobPos := LastSpace; // Устанавливаем последний символ в пробел
   CreatePlainLeftLabel(LeftBStr(tmp,LastSpace)); // Создаём контейнер с тем текстом, что предшествует пробелу
 end else begin
   CreatePlainLeftLabel(tmp); // А если конец строки - создаём с оригинальным текстом.
 end;


 
IrBisoff ©   (2004-05-15 06:21) [1]

Всё, сам решил проблему... =) LastSpace выставлялся для глобальной строки, а мне нужно было его искать в строке локальной... Ввёл вторую переменную для локального LastSpace и усё. =)



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

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

Наверх




Память: 0.47 MB
Время: 0.038 c
11-1073169165
tbyte
2004-01-04 01:32
2004.05.30
KOL


1-1084682121
Янис
2004-05-16 08:35
2004.05.30
народ подскажите я хочу сделать тест и мне нужно что бы при нажат


14-1083906842
Nickola2
2004-05-07 09:14
2004.05.30
С Днём Радио!


1-1084356739
BlackTiger
2004-05-12 14:12
2004.05.30
Как преобразовать "&amp;#_1092;&amp;#_1099;&amp;#_1074;" в String.


14-1084456596
Developerr
2004-05-13 17:56
2004.05.30
Как получить только имя файла в OpenDialog?