استئصال وعلاج مرض وراثي
#24
تم علاج مشكلة المكون EditSpain في المحاذاة الرأسية اما الأفقية فلم تعمل


[صورة: eaolbKg.jpg]

ولعلاج المشكلة رفعت الوحدة التي سوف يتم اضافتها للمشروع

وعلى العموم وجدت هناك برمجة غير مفهومة وغير منطقية على سبيل المثال يوجد الاجراء التالي المسؤول عن مكان كتابة النص

كود :
procedure TSpinEdit.SetEditRect; var   Loc: TRect; begin   SendMessage(Handle, EM_GETRECT, 0, IntPtr(@Loc));   Loc.Bottom := ClientHeight + 1;  {+1 is workaround for windows paint bug}   Loc.Right := ClientWidth - FButton.Width - 2; // Loc.Top := 0;   if  Alignment=taLeftJustify then   Loc.Left := 0;   SendMessage(Handle, EM_SETRECTNP, 0, IntPtr(@Loc));   SendMessage(Handle, EM_GETRECT, 0, IntPtr(@Loc));  {debug} end;


هذا الاجراء لاعادة تموضع مكان الكتابة بالمكون وهو السبب في عدم حل مشكلة المكون في كتابة النص بالمكان الصحيح عند حل المشكلة مع ابوه TCustomEdit 
والسؤال هو لماذا هذا الاجراء طالما المكون TCustomEdit له كل ما هو مطلوب من اجراءات وخصائص لكتابة النص ...؟

الحل طبعا كان التدخل في السطر

كود :
// Loc.Top := 0;

وطبعا لن يعمل المكون بهذه الطريقة لان هناك شئ غير منطقي أخر وهو أخر سطر والذي يجب ان يتم الغاءه

كود :
SendMessage(Handle, EM_GETRECT, 0, IntPtr(@Loc));

فهذا السطر سوف يعيد اي قيم تغيرها الى القيم الأصلية
والسؤال هو لماذا جعلو هذا السطر هنا اساسا ولماذا اعادة القيم

المهم باتباع الخطوات السابقة سيتم كتابة النص بمكانه الصحيح رأسيا اما افقيا فقد اضفت له

كود :
if  Alignment=taLeftJustify then   Loc.Left := 0;   if  Alignment=taCenter then   Loc.Left :=  Loc.Right div 2;   if  Alignment=taRightJustify then   Loc.Left := Loc.Right;

ولكن لم تعمل ولا اعرف لماذا حتى الان حتى اجرب الغاء هذا الاجراء كامل واترك الامر الى الوحدة  TCustomEdit حتى يصير الامر منطقيا أكثر

كما توقعت يكفي الغاء الاجراء الغبي  SetEditRect كاملا من الوحدة وسوف يعمل كل شئ بشكل طبيعي

[صورة: Oo01t49.jpg]

وسوف يتكفل الأب  TCustomEdit  بعمل كل شئ


اذا حتى الان لدينا سطران برمجيان عند الحاجة لهما يجب ان يكتبهما المستخدم في حدث Greate للنموذج

كود :
  DBGrid1.DefaultRowHeight:=31;   SpinEdit1.Alignment:=taCenter;

الاول لتغيير ارتفاع الخلايا
والثاني لوضع النص بالمنتصف للمكون EditSpain


الملفات المرفقة
.rar   D4AVcl.Samples.Spin.rar (الحجم : 5.33 ك ب / التحميلات : 8)
قل: اللهم فاطِرَ السماوات والأرض عالم الغيبِ والشهادة، ربَّ كُلِّ شَيءٍ ومَلِيكَه، أَشْهد أن لا إله إلا أنت، أعوذ بك من شرِّ نفسي وشرِّ الشيطان وشِرْكِهِ وأن أقترف على نفسي سوءًا أو أجرُّه إلى مسلم
الرد


الردود في هذا الموضوع
استئصال وعلاج مرض وراثي - بواسطة Delphi4Us - 16-11-2023, 06:40 PM
RE: استئصال وعلاج مرض وراثي - بواسطة Delphi4Us - 17-11-2023, 10:56 AM
RE: استئصال وعلاج مرض وراثي - بواسطة Delphi4Us - 17-11-2023, 04:04 PM
RE: استئصال وعلاج مرض وراثي - بواسطة Ndagor - 17-11-2023, 08:24 PM
RE: استئصال وعلاج مرض وراثي - بواسطة Delphi4Us - 17-11-2023, 10:45 PM
RE: استئصال وعلاج مرض وراثي - بواسطة Delphi4Us - 18-11-2023, 09:35 AM
RE: استئصال وعلاج مرض وراثي - بواسطة Ndagor - 18-11-2023, 12:14 PM
RE: استئصال وعلاج مرض وراثي - بواسطة Delphi4Us - 18-11-2023, 03:31 PM
RE: استئصال وعلاج مرض وراثي - بواسطة Delphi4Us - 18-11-2023, 07:13 PM
RE: استئصال وعلاج مرض وراثي - بواسطة Ndagor - 18-11-2023, 09:32 PM
RE: استئصال وعلاج مرض وراثي - بواسطة Delphi4Us - 19-11-2023, 10:22 AM
RE: استئصال وعلاج مرض وراثي - بواسطة Ndagor - 19-11-2023, 01:22 PM
RE: استئصال وعلاج مرض وراثي - بواسطة Delphi4Us - 22-11-2023, 05:25 PM
RE: استئصال وعلاج مرض وراثي - بواسطة Ndagor - 22-11-2023, 08:37 PM
RE: استئصال وعلاج مرض وراثي - بواسطة Delphi4Us - 24-11-2023, 03:05 PM
RE: استئصال وعلاج مرض وراثي - بواسطة DAMOCLES - 24-11-2023, 04:30 PM
RE: استئصال وعلاج مرض وراثي - بواسطة Delphi4Us - 24-11-2023, 07:08 PM
RE: استئصال وعلاج مرض وراثي - بواسطة DAMOCLES - 24-11-2023, 08:33 PM
RE: استئصال وعلاج مرض وراثي - بواسطة Delphi4Us - 25-11-2023, 06:47 PM
RE: استئصال وعلاج مرض وراثي - بواسطة Ndagor - 25-11-2023, 09:45 PM
RE: استئصال وعلاج مرض وراثي - بواسطة Delphi4Us - 25-11-2023, 10:36 PM
RE: استئصال وعلاج مرض وراثي - بواسطة Delphi4Us - 26-11-2023, 09:29 AM
RE: استئصال وعلاج مرض وراثي - بواسطة Ndagor - 26-11-2023, 01:52 PM
RE: استئصال وعلاج مرض وراثي - بواسطة Ndagor - 26-11-2023, 08:29 PM
RE: استئصال وعلاج مرض وراثي - بواسطة Delphi4Us - 01-12-2023, 12:14 PM
RE: استئصال وعلاج مرض وراثي - بواسطة Ndagor - 07-12-2023, 07:47 PM
RE: استئصال وعلاج مرض وراثي - بواسطة Ndagor - 08-12-2023, 05:13 PM

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


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