PDA

Просмотр полной версии : Работа со строками


mcdelon
03.11.2006, 21:40
Делаю так


var
R: string;
T: string;
X: integer;
begin
X := Length(T);
if X >= 10 then
//преобразую строку в число и проверяю если оно больше то
R := '...';
//R := Заменяю ... буквы после 10 символа
Insert(R,T,10);
как сделать, подскажите, ничего не происходит

TaNkist
04.11.2006, 08:46
Опиши поподробней, что ты хочешь получить этой функцией.
Следуя твоему коду, получается следдующее:
Если длина строки больше или равна 10, то строке R:='...', Потом строка в строку T Вставляется строка R, т.е. никакой замены то не происходит.
Также я не нашел ни одной функции преобразования строки в число, как это написано у тебя в коментах.

mcdelon
04.11.2006, 12:48
Также я не нашел ни одной функции преобразования строки в число, как это написано у тебя в коментах.
Length(...) Этой функцией преобразую строку в число
В Общем надо узнать число символов(букв) в tabsheet1.caption и если символов больше 10 то после 10 символа обрубить всё и вставить '...'
А потом tabsheet1.caption присвоить полученный результат

TaNkist
04.11.2006, 12:58
Lenght - возвращает длину строки, но никак не преобразует строка в число.
Если я правильно тебя понял, то код должен быть такой:

//Функция написана на скорую руку и не оптимизирована как следует.
var
T: string;
X: integer;
begin
X:=Length(T);
if X>10 then
begin
delete(T,11,x-10);
T:=T+'...';
end;
end;

mcdelon
04.11.2006, 17:59
var
T: string;
X: integer;
begin
T := tabsheet.caption;
X:=Length(T);
if X>10 then
begin
delete(T,11,x-10);
tabsheet.caption:=T+'...';
end;
end;


Так!!!
Работает!
Спасибо за внимание