delphi4arab منتديات دلفي للعرب
تحويل كلم الى  ميل - نسخة قابلة للطباعة

+- delphi4arab منتديات دلفي للعرب (https://delphi4arab.net/forum)
+-- قسم : منتديات دلفي للعرب التعليمية (https://delphi4arab.net/forum/forumdisplay.php?fid=3)
+--- قسم : سؤال و جواب حول دلفي (https://delphi4arab.net/forum/forumdisplay.php?fid=15)
+--- الموضوع : تحويل كلم الى  ميل (/showthread.php?tid=12286)



تحويل كلم الى  ميل - Team dz - 27-04-2023

سلام عليكم  

اريد تحويل كلم الى   ميل 



330448/ 1.609344= 205330,86773

اريد  تعديل  الكود 

PHP كود :
procedure TForm1.Button1Click(Sender: TObject);
var
   a,b:integer;
  begin

  a
:=StrToInt(Edit2.Text);
  b:=StrToInt( '1.609344');

  Edit1.Text:=floattostr(a/b);


  end; 



RE: تحويل كلم الى  ميل - أبو معاذ - 27-04-2023

و عليكم السلام ورحمة الله وبركاته.

لدينا 1 كم = 0,621371  ميل.

نقوم بإدخال القيمة بالكيلومتر في Edit1  و نعرض النتيجة في Edit2
PHP كود :
procedure TForm1.BitBtn1Click(Sender: TObject);
begin
  Edit2
.Text := FloatToStr( StrToFloat(Edit1.text)* 0.621371) ;
end; 


لا ننسى فقط أن نقوم بإختبار القيمة المدخلة ، حيث أن المستعمل لا يمكن أن يدخل إلى الأرقام أو الفاصلة العشرية.

في الحدث KeyPress  الخاص ب Edit1  نكتب التعليمة التالية :
PHP كود :
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
if not (Key in ['0'..'9', DecimalSeparator, Chr(VK_BACK), Chr(VK_DELETE)]) then
  Key 
:= #0;
  if Key = DecimalSeparator then
    
if Pos(DecimalSeparator, Edit1.Text) <> 0 then
      Key 
:= #0;
end; 



RE: تحويل كلم الى  ميل - Team dz - 27-04-2023

شكرا  لك الدلة تعمل بشكل جيدا 

لكن وجهت مشكلة عند الفاصة

مثال 

150247  عند تحويلها  تطلع النتيجة بالميل  93359,0

اريد حذف الفاصلة التى خلف النتيجة

نتيجة  93359  فقط


RE: تحويل كلم الى  ميل - أبو معاذ - 28-04-2023

استعمل الدالة Truncateو هذا مثالها:


https://www.delphibasics.co.uk/Method.php?NameSpace=System&Class=Decimal&Type=Structure&Method=Truncate


RE: تحويل كلم الى  ميل - Team dz - 28-04-2023

برك الله فيك تم تعديل الكود بدون فاصلة 
PHP كود :
edit2.Text:=FloatToStr(int(StrToFloat(Edit2.Text)))