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

Вниз

Воод чисел с разделителями тысяч   Найти похожие ветки 

 
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;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.034 c
1-1173476847
VeLeS
2007-03-10 00:47
2007.05.20
Как сделать плавающее окно?


2-1178264809
newbie2
2007-05-04 11:46
2007.05.20
string в variant, как?


2-1177655329
Ega23
2007-04-27 10:28
2007.05.20
TInterfacedList.Delete - произойдёт ли вызов _Release


15-1177107567
{RASkov}
2007-04-21 02:19
2007.05.20
Временный битмап


11-1159881477
doozer
2006-10-03 17:17
2007.05.20
Как переконвертировать проект?