Dbgridi tarih (gün farkı)e göre renklendirmek

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
eyalin
Üye
Mesajlar: 126
Kayıt: 09 May 2005 08:08

Dbgridi tarih (gün farkı)e göre renklendirmek

Mesaj gönderen eyalin »

S.A.
Herkese kolay gelsin.Biliyorum forumda tarih işlemleri var ama bi türlü olmadı.yapmak istediğim bugünün tarihinden dbgridimde bulunan tarih alanını çıkartmak ve gridi ona göre renklendirmek.Bi türlü çözemedim.
Uses ta dateutils eklidir.

Kod: Tümünü seç

if DaysBetween(today-dm1.sikayetdataset.FieldByName('S_KAYTARIH'))>=10 THEN
begin
dbgridsikayetlistesi.Canvas.Font.Color := clBLACK ;
dbgridsikayetlistesi.Canvas.Brush.Color:= clYELLOW;
dbgridsikayetlistesi.DefaultDrawColumnCell(Rect, DataCol, Column, State);
gibi bir kod var ne yapmam lazım.Yardımlarınız için teşekkürler.
Haa bu arada calculated field falan olmadan yaparsam çok güzel olur.

Kod: Tümünü seç

if DaysBetween(today,dm1.sikayetdataset.FieldByName('S_KAYTARIH').AsDateTime)<2 THEN
şeklinde kulandım ve çözüldü.Yanlış kullanıyordum.Umarım msj kirliliği yapmış olmuyorumdur. :) Ya valla bu foruma emeği geçen herkesten Allah razı olsun.Soruyu sorduktan sonra bile sanki bi ilham geliyo sanki.
Kullanıcı avatarı
conari
Üye
Mesajlar: 2102
Kayıt: 27 Nis 2006 03:10
Konum: İstanbul & Gebze Karışık

Mesaj gönderen conari »

1. tarih eşleştirmesini kontrol edin sonuc >=10 doğrumu ?
ikincisi hangi eventte yapıyorsunuz.

drawdatacell de yaparsanız olması lazım.
Bir kelimenin anlamını öğretsen bile yeter..
ResimResim
Kullanıcı avatarı
chnyildirim
Üye
Mesajlar: 39
Kayıt: 25 Haz 2003 01:51
İletişim:

Mesaj gönderen chnyildirim »

:oops: sorunu çözmüş arkadaş. neyse bilgi olarak kalsın... :idea:

DbGrid Eventsında
DBGridOnColumnCell e

Kod: Tümünü seç

 if (Odd(Column.Field.DataSet.RecNo)) AND (State = []) then DBGrid3.Canvas.Brush.Color := clInfoBk;
   DBGrid3.DefaultDrawcOLUMNCell(Rect,DataCol,Column,State);
yazıp denermisin.
Cevapla