delphi useful functions دوال و إجراءات دلفي مفيدة
#7
السلام عليكم...

لدي وحدة برمجية (unit) خاصة أضيف إليها من حين إلى آخر بعض الدوال و الإجراءات التي قد أحتاجها في العديد من المشاريع. هنا بعض الدوال و الإجراءات من تلك الوحدة:

الدوال الثلاث التالية تعتمد على مبدأ محاولة التحويل و اصطياد الخطأ. أستعملها للتأكد من أن المستخدم أدخل البيانات ذات النوع المطلوب (في TEdit مثلاً):

1. دالة للتأكد من أن القيمة المدخلة عدد صحيح:
كود :
function IsInteger(Text: string): Boolean; begin try StrToInt(Text); Result := True; except Result := False; end; end;

2. دالة للتأكد من أن القيمة المدخلة عدد حقيقي:
كود :
function IsFloat(Text: string): Boolean; begin try StrToFloat(Text); Result := True; except Result := False; end; end;

3. دالة للتأكد من أن القيمة المدخلة تاريخ مقبول:
كود :
function IsDate(Text: string): Boolean; begin try StrToDate(Text); Result := True; except Result := False; end; end;

الدالة التالية تتأكد مما إذا كان المفتاح (في لوحة المفاتيح) مضغوطاً أم لا (غالباً قد نحتاجها مع مفاتيح Shift أو Ctrl أو Alt. ثوابتها العددية هي VK_SHIFT و VK_CONTROL و VK_MENU على الترتيب):
كود :
function KeyIsDown(AVirtKey: Integer): Boolean; const KEY_IS_DOWN = $8000; var AKeyState: SmallInt; begin AKeyState := GetKeyState(AVirtKey); if (AKeyState and KEY_IS_DOWN) = KEY_IS_DOWN then Result := True else Result := False; end;

الدالة التالية تتأكد ما إذا كان أحد المفاتيح القلابة مشغل أم لا (المفاتيح القلابة هي التي لها حالة تشغيل/إطفاء، و تشمل CapsLock و NumLock و ScrollLock) و ثوابتها العددية هي على الترتيب: VK_CAPITAL و VK_NUMLOCK و VK_SCROLL:
كود :
function KeyIsToggledOn(AVirtKey: Integer): Boolean; const KEY_IS_ON = $0001; var AKeyState: SmallInt; begin AKeyState := GetKeyState(AVirtKey); if (AKeyState and KEY_IS_ON) = KEY_IS_ON then Result := True else Result := False; end;

نرجو الاستفادة و السلام.
الرد


الردود في هذا الموضوع
delphi useful functions دوال و إجراءات دلفي مفيدة - بواسطة Najy Ibraheem - 27-08-2013, 01:44 AM

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


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