كيف يمكنني تغيير الفاصل العشري برمجيًا
#5
يبدو أن الأمور لم تتضح جيدا...
رمز فاصلة الأعداد في النظام محدد مسبقا
مثلا لو حددت الفاصلة في النظام هي الرمز ,
وكتبت رقم 1.2 فستشاهد حتما مثل هذا الخطأ
لكن إذا كتبت قبل ذلك:
كود :
DecimalSeparator := '.';
وهذا معناه أن رمز فاصلة الأعداد في برنامج (بعد تحديده) يختلف عنه في النظام
وبالتالي فلن يحدث الخطأ.
يبقى شيء وهو إذا أردت أن تحافظ على رمز فاصلة النظام (يعني تستعمل نفس رمز النظام)
يمكن تغيره يدويا في الحدث OnKeyPress بشيء مثل:
كود :
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char); begin if Key = '.' then Key := ','; end;
وبالتالي إذا ضغط المستعمل على . فسيشاهد , عوضا عنها
وهكذا لن تحتاج إلى تغير DecimalSeparator .
ملاحظة: المتغير DecimalSeparator يمكن قراءته وفحصه كما يمكن تغيره أيضا.
راجع سؤال أخونا نبيل أيضا للاستزادة:
http://www.delphi4arab.net/forum/showthr...p?tid=1770
بالتوفيق.
اللهم احقن دماء المسلمين، لا تنسوهم بالدعاء...
الرد


الردود في هذا الموضوع
كيف يمكنني تغيير الفاصل العشري برمجيًا - بواسطة kachwahed - 03-09-2009, 11:42 AM

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم