19-06-2017, Saat: 15:47
Merhaba; Daha önce açmış olduğum (Parayı çarpma ve toplama işlemi) başlıklı benzen konu gibi olsa da bir birinden faklı.
Edit içine ondalıklı sayı olsun veya olmasın toplama işlemini yaptırmak istiyorum, bu nedenden dolayı nokta ve virgül adet kontrolüyle işleme başlamak istiyorum.
fakat bir türlü nokta ve virgül kontrolünü sağlayamadı. edit içine maksimum 1 adet virgül 2 adet nokta girilecek. acaba nerede hata yapıyorum? bir türlü kontrol sağlanmıyor
Anlayamadığım marketlerde bu işlem mi adamlar nasıl çözmüş
Edit içine ondalıklı sayı olsun veya olmasın toplama işlemini yaptırmak istiyorum, bu nedenden dolayı nokta ve virgül adet kontrolüyle işleme başlamak istiyorum.
fakat bir türlü nokta ve virgül kontrolünü sağlayamadı. edit içine maksimum 1 adet virgül 2 adet nokta girilecek. acaba nerede hata yapıyorum? bir türlü kontrol sağlanmıyor
var NoktaSay, VirgulSay: Integer;
procedure TForm2.Edit1KeyPress(Sender: TObject; var Key: Char);
const
Aranan: String = '.,';
var
SearchChar: String;
begin
for I := 1 to length(Aranan) do
begin
SearchChar := Key;
if Pos('.', SearchChar[I]) > 0 then // Nokta var mı?
Inc(NoktaSay);
if Pos(',', SearchChar[I]) > 0 then // Virgül var mı?
Inc(VirgulSay);
if NoktaSay > 2 then // Nokta say
if Not(Key in ['0' .. '9', #8]) then
begin
Key := #0;
end;
if VirgulSay > 1 then // Virgül say
if Not(Key in ['0' .. '9', #8]) then
begin
Key := #0;
end;
end;end;
Anlayamadığım marketlerde bu işlem mi adamlar nasıl çözmüş

jedi componenti yükle jvcalcedit componenti forma bırak display formata #,##0.00 yapıştır yada cxcalcedit onda da aynı şekilde #,##0.00 işini göreceği kanısındayım.
Hiç bizi yorma diyorsun