checklistbox ve renklendirme

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
ayseonat
Üye
Mesajlar: 58
Kayıt: 17 Ara 2004 12:18
Konum: Konya

checklistbox ve renklendirme

Mesaj gönderen ayseonat »

Merhaba arkadaşlar
delphi ve access te yapmış olduğum bi projem var. veri tabanında bazı süzme işlemleri yapıyorum.
lise alanları var. o lise alanlarını seçtikten sonra başka alt alanlar geliyor. mesela Öğretmen Lisesini seçtiğimde Sosyal bilimler, edebiyat gibi alt alanlar geliyor. daha sonra burdan da seçim yaptığımda o alana ait meslek grupları checklistbox'ın içine geliyor. ama mesela edebiyat alanına ait meslek gruplarının içinde sözel ve eşit ağırlık alanları var. ve ben checklistbox ta bunları listeletirken sözel olan alanlar kırmızı ve eşit ağırlık olan alanlar mavi gelsin istiorum. ama olmuyor.
yazdığım kod:

Kod: Tümünü seç


i:=0;
while not alt.eof do
begin
   CheckListBox1.Items.Add(altadi.AsString);  // altadi=meslek adı
   checkListBox1.Checked[i]:=true;
   if altbrans.AsString='ea' then // altbrans=olması gereken branş
   CheckListBox1.Font.Color:=clblue;
   if altbrans.AsString='söz' then
   CheckListBox1.Font.Color:=clred;
   if altbrans.AsString='say' then
   CheckListBox1.Font.Color:=clgreen;
   if altbrans.AsString='dil' then
   CheckListBox1.Font.Color:=clblack;
   i:=i+1;
alt.Next;
end;
bu konuda yardımcı olursanız sevinirim.
herkese ii çalışmalar
Kullanıcı avatarı
MicroChip
Kıdemli Üye
Mesajlar: 1119
Kayıt: 02 Ağu 2003 01:02
Konum: İstanbul
İletişim:

Mesaj gönderen MicroChip »

Bir Tlistbox icerisinde bulunan satirlarin, belli sartlara göre farkli renklerde olmasi için aşağıdaki örneği inceleyiniz.

Kod: Tümünü seç

//Style= lbOwnerDrawFixed olmali.
procedure TForm1.ListBox1DrawItem(Control: TWinControl;
          Index: Integer; Rect: TRect; State: TOwnerDrawState);
begin
  With ( Control As TListBox ).Canvas Do
  Begin
    Case Index Of
      0:
      Begin
        Font.Color  := clBlue;
        Brush.Color := clYellow;
      End;
      1:
      Begin
        Font.Color  := clRed;
        Brush.Color := clLime;
      End;
      2:
      Begin
        Font.Color  := clGreen;
        Brush.Color := clFuchsia;
      End;
    End;
    FillRect(Rect);
    TextOut(Rect.Left, Rect.Top, ( Control As TListBox ).Items[Index]);
  End;
end;
Kafkas Kartalı Kabarday
Sitesi!= http://www.ahmetceylan.com
Resim
Cevapla