delphi4arab منتديات دلفي للعرب
تلوين item في listbox... كيف ؟ - نسخة قابلة للطباعة

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



تلوين item في listbox... كيف ؟ - AL-MOB4RM3G - 11-02-2009

بسم الله الرحمان الرحيم...


اخواني الكرام

اواجه مشكلة مع تلوين ليست بوكس....
ليس كلها ولكن فقد item واحد....

الفكرة هي ان المستخدم يتاح له 3 خيرات من خلال 3 buttom
اذا اختار لون الأخضر يصير لون ال item في اليس بوكس اخدر...

وهذا مع الأصفر و الأحمر...

يعني لو هو ضغط على كبسة 1 لصار لون الإيّتيم اخضر...
و لو ضغط على كبسة رقم 2 لصار احمر ...

وكذا ...

فكيف يمكنني من عمل ذلك ؟
هل لتلوين الإيتيم خاصّيّة ؟

انا بحثت كثيرا...
ووجد هذا الكود
كود :
First of all, you should set Style method to lbOwnerDrawFixed. And then use OnDrawItem event with lines: procedure TForm1.ListBox1DrawItem(Control: TWinControl; Index: Integer; Rect: TRect; State: TOwnerDrawState); var Mas: array[1..5] of Integer; begin Mas[1]:=clRed; Mas[2]:=clBlue; Mas[3]:=clYellow; Mas[4]:=clAqua; Mas[5]:=clGreen; with (Control as TListBox).Canvas do begin Brush.Color:=Mas[Index+1]; FillRect(Rect); TextOut(Rect.Left,Rect.Top,IntToStr(Index+1)); end; end;


ولكن بصراحة ما عرفت اتصرف معه حتى اتمكن من عمل مرادي والله المستعان...

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


تلوين item في listbox... كيف ؟ - hanipino - 11-02-2009

السلام عليكم

محاولة

[صورة: sanstitrelo6.jpg]

و السلام عليكم .


تلوين item في listbox... كيف ؟ - AL-MOB4RM3G - 11-02-2009

نعم بارك الله فيك اخي الكريم...
لكن اخي... هل ممكن اضافة خاصية تلوين item موجود مسبقاّ ؟
بارك الله فيك...

وثايناّ....
حيّرني هذا الكود...

PHP كود :
procedure TForm1.btn1Click(Sender: TObject);
begin
    
case (Sender as TButton).Tag of
     0
:
      
begin
       SlI
.Add(edt1.Text); SlC.Add('255');
      
end;
     
1:
      
begin
       SlI
.Add(edt1.Text); SlC.Add('16711680');
      
end;
     
2:
      
begin
       SlI
.Add(edt1.Text); SlC.Add('32768');
      
end;
    
end;
  
AddItems();
end; 

ما هو الواحد و 2 و الصفر ؟
وثانياّ

كيف فعلت بارك الله لك حتى تستخدم نفس الكود عندما تضغط على
btn 1 او btn2 او btn3 بارك الله لك...

شكرا لك كثيرا اخي


تلوين item في listbox... كيف ؟ - hanipino - 12-02-2009

[صورة: sanstitreyc9.jpg]

فى هذا المثال يمكن تغير اللون فقط و لا يمكن الاضافة .


تلوين item في listbox... كيف ؟ - AL-MOB4RM3G - 12-02-2009

نعم اخي هانابينوا...
بارك الله فيك مشي الحال تقريبا...
وشكرا على ال****** بارك الله فيك

فقد اخي لو مثلا اضفت على مثالك الآخير button يضيف و يلون الأيتيم احمر في نفس الوقت كيف يصير الكود

حاولت في هذا الود لكن لا يقبل به...
PHP كود :
Sl_C.Add(edt1.text); Sl_CH.Add('255'); 

بارك الله فيك


تلوين item في listbox... كيف ؟ - hanipino - 12-02-2009

السلام عليكم

اخى Moh اضن ان هذا ما تبحث عنه :

- اضافة اتام ملون .
- تعديل على اللون .
- حذف اتام .
- تعديل نص الايتام .

واجهتنى مشكلة و هى يجب ان تكون ListBox تحتوى على الاقل اتام 1 . تغلبت عليها بوضع اتام لا يمكن حذفه .

بالتوفيق .

[صورة: sanstitrein0.jpg]

و السلام عليكم .


تلوين item في listbox... كيف ؟ - AL-MOB4RM3G - 13-02-2009

نعم اخي الكريم....
الله يبارك فيك...

هذا بظبط ما كنت ابحث عنه Smile
بارك الله لك وبك وجزاك الله كل خير....

وسامحني على إتعابك Rolleyes
الله يبارك فيك


تلوين item في listbox... كيف ؟ - hanipino - 13-02-2009

و فيك بركة اخى Moh Smile .