السلام عليكم
كيف عدم السماح بادخال اكثر من رقمين بعد الفاصلة عند ادخال مبلغ ما لايسمح بادخال رقمين بعد الفاصلة خصوصا ان كانت مثلا العمولة بالدينار الجزائري
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char); begin if not CharInSet(key,['0'..'9','.',#8]) then Key:=#0; if (pos('.',Edit1.Text) > 0 ) and (length(Edit1.Text) - pos('.',Edit1.Text) > 1) and not( CharInSet(key,[#8])) then Key := #0; end;
اذا ارت ان تمنع المستخدم من ان يكتب الكثر من فاصلة واحدة اضف الكود التالى
PHP كود :
if CharInSet(Key,['.'])and( pos('.',Edit1.Text) > 0) then key:=#0;
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char); var s: string; Maxi: Integer; begin s := Edit1.Text; if not(Key in ['.', '0'..'9', Char(VK_BACK)]) then Key := #0; if key = '.' then if Pos('.', s) > 0 then key := #0; if Pos('.', s) > 0 then Maxi := Length(Copy(s, Pos('.', s) + 1, Length(s))) else maxi :=0; if (Maxi > 1) and not(key = char(VK_Back))then key := #0; end;
و لرب نازلة يضيق لها الفتى ذرعا و عند الله منها المخرج ضاقت فلما استحكمت حلقاتها فرجت و كنت اضنها لا تفرج
Example code : General display of numbers
var
amount1 : Extended;
begin
amount1 := 1234.567;
// Display in Fixed format
ShowMessage('Fixed formatting :');
ShowMessage('');
ShowMessage('Using 8,4 = '+FloatToStrF(amount1, ffFixed, 8, 4));
ShowMessage('Using 4,4 = '+FloatToStrF(amount1, ffFixed, 4, 4));
ShowMessage('Using 4,2 = '+FloatToStrF(amount1, ffFixed, 4, 2));
ShowMessage('Using 2,4 = '+FloatToStrF(amount1, ffFixed, 2, 4));
// Display in General format
ShowMessage('');
ShowMessage('General formatting :');
ShowMessage('');
ShowMessage('Using 8,4 = '+FloatToStrF(amount1, ffGeneral, 8, 4));
ShowMessage('Using 4,4 = '+FloatToStrF(amount1, ffgeneral, 4, 4));
ShowMessage('Using 4,2 = '+FloatToStrF(amount1, ffGeneral, 4, 2));
ShowMessage('Using 2,4 = '+FloatToStrF(amount1, ffGeneral, 2, 4));
// Display in Number format
ShowMessage('');
ShowMessage('Number formatting :');
ShowMessage('');
ShowMessage('Using 8,4 = '+FloatToStrF(amount1, ffNumber, 8, 4));
ShowMessage('Using 4,4 = '+FloatToStrF(amount1, ffNumber, 4, 4));
ShowMessage('Using 4,2 = '+FloatToStrF(amount1, ffNumber, 4, 2));
ShowMessage('Using 2,4 = '+FloatToStrF(amount1, ffNumber, 2, 4));
end;
result///
كود :
Fixed formatting :
Using 8,4 = 1234.5670
Using 4,4 = 1235.0000
Using 4,2 = 1235.00
Using 2,4 = 1.2E0003
General formatting :
Using 8,4 = 1234.567
Using 4,4 = 1235
Using 4,2 = 1235
Using 2,4 = 1.2E0003
Number formatting :
Using 8,4 = 1,234.5670
Using 4,4 = 1,235.0000
Using 4,2 = 1,235.00
Using 2,4 = 1.2E0003