Dbgrid hücre renklendirme

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
Kullanıcı avatarı
conari
Üye
Mesajlar: 2102
Kayıt: 27 Nis 2006 03:10
Konum: İstanbul & Gebze Karışık

Dbgrid hücre renklendirme

Mesaj gönderen conari »

Arkadaşlar sitede ve nette bir çok renklendirme örneği var.
Fakat ben satırın tamamını renklendirmek istemiyorum.
Bu şekildede zaten kullanıyorum.
Hücre deki değere göre sadece o hücrenin rengini, font rengini v.s. değiştirmek istiyorum.
Bir türlü istediğimi yapamadım.

Yönlendirmeler için teşekkürler.
Bir kelimenin anlamını öğretsen bile yeter..
ResimResim
Kullanıcı avatarı
Biltes
Üye
Mesajlar: 361
Kayıt: 11 Oca 2005 02:24
Konum: Edirne

Re: Dbgrid hücre renklendirme

Mesaj gönderen Biltes »

Aşağıdaki linke bir gözat derim en azından sana fikir verebilir.

viewtopic.php?t=1810&highlight=acolumn

Kolay gelsin...
Var olmaya değer her şey bilinmeye de değerdir. Çünkü bilgi varlığın bir imgesidir. Onda iyi ve kötü aynı anda bulunmaktadır...
Kullanıcı avatarı
Battosai
Üye
Mesajlar: 1316
Kayıt: 01 Eki 2007 12:02
Konum: Ankara

Re: Dbgrid hücre renklendirme

Mesaj gönderen Battosai »

Sen satır satır renklendirme kodlarına bakmışındır...biraz kurcala ordaki kodları istediğini yaparlar... bide örnek göndereyim....

Kod: Tümünü seç

if column.Field.AsString='ALACAK' then
begin
 DBGrid4.Canvas.Brush.Color:=clGreen;
 DBGrid4.Canvas.Font.Color:=clwhite;
 DBGrid4.Canvas.Font.Style:=[fsBold];
 end
  else
  begin
   DBGrid4.canvas.Brush.Color:=clred;
   DBGrid4.Canvas.Font.Color:=clwhite;
   DBGrid4.Canvas.Font.Style:=[fsBold];
  end;
DBGrid4.DefaultDrawColumnCell(Rect, DataCol, Column, State);
Kullanıcı avatarı
conari
Üye
Mesajlar: 2102
Kayıt: 27 Nis 2006 03:10
Konum: İstanbul & Gebze Karışık

Re: Dbgrid hücre renklendirme

Mesaj gönderen conari »

arakadaşlar ben tüm satırın veya column u renklendirmek istemiyorum.bunu zaten kullanıyorum.
Satır daki tek hücreyi renklendirmek istiyorum.

Cells(8,7).bruch.color=clblue; gibi bir şey demem lazım.
Bir kelimenin anlamını öğretsen bile yeter..
ResimResim
Kullanıcı avatarı
Battosai
Üye
Mesajlar: 1316
Kayıt: 01 Eki 2007 12:02
Konum: Ankara

Re: Dbgrid hücre renklendirme

Mesaj gönderen Battosai »

Yani altındaki hücrede aynı özellikteyse onu renklendirmeyecek diyorsun....mu ?
Kullanıcı avatarı
conari
Üye
Mesajlar: 2102
Kayıt: 27 Nis 2006 03:10
Konum: İstanbul & Gebze Karışık

Re: Dbgrid hücre renklendirme

Mesaj gönderen conari »

Şöyle anlatayım.
Gridi bir kere
bir satır renkli bir satır normal gösteriyorum.
ama 1. satır da 8.colums değeri X ise o değerin rengi Y renginde olsun diyorum.
Sadece O hücre.
anlatabilmişimdir inşallah.
Bir kelimenin anlamını öğretsen bile yeter..
ResimResim
Kullanıcı avatarı
conari
Üye
Mesajlar: 2102
Kayıt: 27 Nis 2006 03:10
Konum: İstanbul & Gebze Karışık

Re: Dbgrid hücre renklendirme

Mesaj gönderen conari »

Çözüm makalelerde. @Aslangeri sağolsun.

viewtopic.php?f=19&t=24985&p=141359#p141359
Bir kelimenin anlamını öğretsen bile yeter..
ResimResim
Kullanıcı avatarı
Battosai
Üye
Mesajlar: 1316
Kayıt: 01 Eki 2007 12:02
Konum: Ankara

Re: Dbgrid hücre renklendirme

Mesaj gönderen Battosai »

if column.Field.FieldName='hareket_tipi' then
Keşke önceki gönderdiğim kodun tamamını yollasaymışım şimdiye kadar beklemezdin...yukardaki satırı ekleyince mevzu tamam oluyor yani.... ama sen bunu kendin bulabilirdin diye düşünüyorum....
Kullanıcı avatarı
conari
Üye
Mesajlar: 2102
Kayıt: 27 Nis 2006 03:10
Konum: İstanbul & Gebze Karışık

Re: Dbgrid hücre renklendirme

Mesaj gönderen conari »

Demekki bazen insanların gözünden en ufak bir ayrıntı bile kaçabiliyor.
Bir kelimenin anlamını öğretsen bile yeter..
ResimResim
Pimapen_Nuri
Üye
Mesajlar: 10
Kayıt: 10 Nis 2006 10:16
Konum: İZMİR

Re: Dbgrid hücre renklendirme

Mesaj gönderen Pimapen_Nuri »

procedure TForm3.DBGrid2DrawColumnCell(Sender: TObject; const Rect: TRect;
DataCol: Integer; Column: TColumn; State: TGridDrawState);
Var
Renk:Tcolor;
Renk1:Tcolor;
Begin
Renk:=DbGrid2.Canvas.Brush.Color;
if Column.Fieldname='islem' then
if (Column.Field.AsString ='Alış') then
Begin
DbGrid2.Canvas.Font.Color:=Clred;
DbGrid2.DefaultDrawColumnCell(Rect,Datacol,Column, state);
DbGrid2.Canvas.Brush.Color:=Renk;
end;

if column.FieldName='islem' then
if (Column.Field.AsString ='Satış') then
Begin
DbGrid2.Canvas.Font.Color:=Clblue;
DbGrid2.DefaultDrawColumnCell(Rect,Datacol,Column, state);
DbGrid2.Canvas.Brush.Color:=Renk;

end;
Delphi Öğrenmenin yolu nedir.?
Cevapla