Форум: "Основная";
Текущий архив: 2007.05.20;
Скачать: [xml.tar.bz2];
ВнизВоод чисел с разделителями тысяч Найти похожие ветки
← →
JIuSS (2007-03-20 09:37) [0]Доброго всем дня!
Подскажите пожалуйста, есть ли такой компонент, который при вводе чисел выполнял бы их форматирование на лету? Конкретно необходимо, что число отображалось с разделителями тысяч. Т.е. пользователь вводит 12345, а в эдите отображается 12"345
← →
DimaBr (2007-03-20 09:41) [1]Под Delphi написано всё что возможно и половина невозможного.
Внимание! Здесь обсуждаются вопросы, связанные с разработкой компонентов, редакторов свойств, редакторов компонентов и экспертов IDE.
Вопросы по поиску и использованию готовых компонентов, редакторов или экспертов являются нарушением тематики и могут быть удалены.
← →
JIuSS (2007-03-20 09:46) [2]
> DimaBr (20.03.07 09:41) [1]
> Под Delphi написано всё что возможно и половина невозможного.
>
Пробовал найти что-нить - никакого результата. как написать свой эдит, в голову не приходит (в плане вывода числа)
← →
DimaBr (2007-03-20 10:15) [3]
var Flag: boolean;
procedure TForm1.Edit1Change(Sender: TObject);
var S: string;
x,F,i: integer;
begin
if Flag then Exit;
Flag := true;
s := StringReplace(Edit1.Text," ","",[rfReplaceAll]);
x := Length(S);
i := X-2;
while I > 0 do begin
Insert(" ",s,i);
Dec(i,4);
end;
Edit1.Text := S;
Flag := false;
Edit1.SelStart := Length(Edit1.Text);
end;
← →
GrayFace © (2007-03-23 22:45) [4]http://www.grayface.nm.ru/RSPak.rar
RSSpinEdit.pas
← →
TUser © (2007-03-24 08:05) [5]
unit uMyIntToStr;
interface
function MyIntToStr (I: integer): string;
implementation
uses SysUtils;
function MyIntToStr (I: integer): string;
var J, K: integer;
N: boolean;
_i: integer;
begin
_i := I;
result := "";
N := I < 0;
if N then I := -I;
K := 1; J := I div 10;
while J > 0 do begin
inc (K);
J := J div 10;
end;
J := K + (K div 3);
if K mod 3 = 0 then dec (J);
if N then inc (J);
SetLength (result, J);
K := 0;
repeat
inc (K);
if K mod 4 = 0 then
result[J] := " "
else begin
result[J] := chr(ord("0") + (I mod 10));
I := I div 10;
end;
dec (J);
until I <= 0;
if N then result[1] := "-";
if StringReplace (result, " ", "", [rfReplaceAll]) <> inttostr (_i) then begin
writeln;
writeln (""", result, "" != "", _i, """);
halt;
end;
end;
end.
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2007.05.20;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.048 c