17-02-2010, 06:23 AM
السلام عليكم ورحمة الله,
اخوآني الكرام, احآول عمل دآلة تغنيني عن بعض الأكوآد المتكررة,
في البرنآمج الذي اعمل عليه يتكرر نفس الأمر بالنسبة لعدة Labels الا وهو استغلآل OnMouseDown و onMouseUp,
في حآلة OnMouseDown يكون الكود هو التآلي,
وفي حآلة OnMouseUp يكون الكود,
بالإضآفة الى ذلك, يكون ال Cursor = crHandPoint
وهذا الأمر ينطبق على اكثر من 50 Label في المشورع,
----
محآولتي هو التآلي,
عملت Procedure وهو التآلي, بالنسبة OnMouseDown
وعملت Procedure و, بالنسبة OnMouseUp
هذا الحل يعمل, لكن مع كل label احتاج الى الكتآبة في حدثين 2,
الأول اكتب فيه LinkRed و الثآني اكتب فيه LinkBlue,
--
المطلوب هو التآلي,
اود كتآبة نفس الأمر في كل الأحداث,
يعني اود عمل Procedure يدمج LinkRed مع LinkBlue ونسمّيه ContolLink
بدآخله يكون الأمر انه يفحص مثلا من اي حدث جآء هذا الطلب وبعدها يعمل المطلوب منه عمله,
مثال حتى تتضح الصورة,
وبهذا اكتب في كل حدث الأمر ContolLink و الدآلة تتكفل في البآقي,
بارك الله لك,
والسلام عليكم ورحمة الله
اخوآني الكرام, احآول عمل دآلة تغنيني عن بعض الأكوآد المتكررة,
في البرنآمج الذي اعمل عليه يتكرر نفس الأمر بالنسبة لعدة Labels الا وهو استغلآل OnMouseDown و onMouseUp,
في حآلة OnMouseDown يكون الكود هو التآلي,
كود :
Label1.Font.Color := clred;وفي حآلة OnMouseUp يكون الكود,
كود :
Label1.Font.Color := clBlue;بالإضآفة الى ذلك, يكون ال Cursor = crHandPoint
وهذا الأمر ينطبق على اكثر من 50 Label في المشورع,
----
محآولتي هو التآلي,
عملت Procedure وهو التآلي, بالنسبة OnMouseDown
كود :
Procedure LinkRed(Sender: TObject);
begin
if (Sender is Tlabel) then
begin
With (sender as Tlabel) do font.Color := clred;
end;
end;وعملت Procedure و, بالنسبة OnMouseUp
كود :
Procedure LinkBlue(Sender: TObject);
begin
if (Sender is Tlabel) then
begin
With (sender as Tlabel) do font.Color := clBlue;
end;
end;هذا الحل يعمل, لكن مع كل label احتاج الى الكتآبة في حدثين 2,
الأول اكتب فيه LinkRed و الثآني اكتب فيه LinkBlue,
--
المطلوب هو التآلي,
اود كتآبة نفس الأمر في كل الأحداث,
يعني اود عمل Procedure يدمج LinkRed مع LinkBlue ونسمّيه ContolLink
بدآخله يكون الأمر انه يفحص مثلا من اي حدث جآء هذا الطلب وبعدها يعمل المطلوب منه عمله,
مثال حتى تتضح الصورة,
كود :
procedure ControlLink(Sender: TObject);
begin
if OnMouseDown then LinkRed;
if OnMouseUp then LinkBlue
end;وبهذا اكتب في كل حدث الأمر ContolLink و الدآلة تتكفل في البآقي,
بارك الله لك,
والسلام عليكم ورحمة الله
فرّج همّ المهمومين يا الله
اللهم فك قيد اسرانا و اسرى المسلمين
اللهم فك قيد اسرانا و اسرى المسلمين



![[صورة: biggrin.gif]](http://delphi4arab.net/forum/images/smilies/biggrin.gif)