StringGrid Renklendirme
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
StringGrid Renklendirme
S.A
Arkadaşlar, Stringgrid de herbir satırın rengini kendim ayarlamak istiyorum, bunun için ne yapabilirim?
Teşekkür Ederim. İyi Çalışmalar.
Arkadaşlar, Stringgrid de herbir satırın rengini kendim ayarlamak istiyorum, bunun için ne yapabilirim?
Teşekkür Ederim. İyi Çalışmalar.
2 yöntemi var
İlki OnDrawCell de bunu kendin yaparsın
ikinci yöntem ise bu işi yapan 3parti bileşenlerden kullanabilirsin, Bunların Source u olanlarını kullanmanı öneririm, ve sadece alıp kullanma, yazılmış kodu incele nasıl bir mantık ve yöntem kullanılmış
Kolay gele
İlki OnDrawCell de bunu kendin yaparsın
ikinci yöntem ise bu işi yapan 3parti bileşenlerden kullanabilirsin, Bunların Source u olanlarını kullanmanı öneririm, ve sadece alıp kullanma, yazılmış kodu incele nasıl bir mantık ve yöntem kullanılmış
Kolay gele
ZAGOR TENAY TÜRK'tür... TÜRK kalacak...
Zoru başarırım, İmkansız zaman alır
FreeMan 35.5
Soru sormaya üşenmiyorsan, sorunun çözümünü yazmaya da üşenme !!!
Zoru başarırım, İmkansız zaman alır
FreeMan 35.5
Soru sormaya üşenmiyorsan, sorunun çözümünü yazmaya da üşenme !!!
selamlar..
hojam tablomdadaki satırlar daha kolay okunsun diye bir satırı bir renk diğer satırı başkarenk yapmayı düşünüyordum,
tarzında bi uygulamay yaptım, esasında işimi görüyor böyle bir mantık ama, aradan bir satır silince veya (başka bir tabloda query sonucu alınca) bu işe yaramıyor(atlayarak gitmiyor yani).. acaba bu odd(xx) içinde kullanabileceğim tablodaki verinin satır nosunu tutan bi fonksiyon varmı?
gelecek kaygısıyla harici component kullanmak istemiyorum..
hojam tablomdadaki satırlar daha kolay okunsun diye bir satırı bir renk diğer satırı başkarenk yapmayı düşünüyordum,
Kod: Tümünü seç
.....
if odd(QueTablemyTableKEYFIELD.AsInteger) then
Color:=$FFFBF0
else
Color:=$FFFFFF;
.....
DBGrid1.Canvas.Brush.Color:=Color;
DbGrid1.Canvas.FillRect(Rect);
DbGrid1.DefaultDrawColumnCell(Rect, DataCol, Column, State);
gelecek kaygısıyla harici component kullanmak istemiyorum..
Selam...
- Siz tabloya kaydolan kayıt numarasını sorguladığınızdan, bu alana ait kayıtlar baştan aşağı güncellenirse istediğiniz olur ki bu güncelleme çok anlamsız ve mantıksız olur... (eğer gereği yoksa)
- Recno'ya göre bu işlemi yaparsanız isteğiniz gibi aradan eksilme olsa dahi buna göre yine bir satır bir renk, diğer satır başka renk olacaktır...
şeklinde...
- Siz tabloya kaydolan kayıt numarasını sorguladığınızdan, bu alana ait kayıtlar baştan aşağı güncellenirse istediğiniz olur ki bu güncelleme çok anlamsız ve mantıksız olur... (eğer gereği yoksa)
- Recno'ya göre bu işlemi yaparsanız isteğiniz gibi aradan eksilme olsa dahi buna göre yine bir satır bir renk, diğer satır başka renk olacaktır...
Kod: Tümünü seç
.....
if odd(QueTablemyTable.RecNo) then
Color:=$FFFBF0
else
Color:=$FFFFFF;
.....
sağolun ,bende RECNo hep -1 dönüyor,
nedeni ne olabilir?
viewtopic.php?t=667&highlight=%2Arecno%2Aörneğinde bahsedildiği gibibir calculated alan yapıp onu arttırmayı denedim.. onuda sürekli olarak -1 atıyor..
nedeni ne olabilir?
viewtopic.php?t=667&highlight=%2Arecno%2Aörneğinde bahsedildiği gibibir calculated alan yapıp onu arttırmayı denedim.. onuda sürekli olarak -1 atıyor..
- DBGrid'in sonuçları aldığı DataSource'un Query'sini belirttiğinize eminsiniz değil mi ? Bir de Query Active değilse -1 gelmesi doğal...
- Dilerseniz kontrol için kodunuzu şöyle yazın...
- Dilerseniz kontrol için kodunuzu şöyle yazın...
Kod: Tümünü seç
.....
if DBGrid1.DataSource.DataSet.Active then
begin
if odd(DBGrid1.DataSource.DataSet.Recno)
then Color:=$FFFBF0
else Color:=$FFFFFF;
end;
.....
RecNo Kullandığın database ve component ile doğru orantılı. Mesala IBX de RecordCount dahi doğru gelmez. Bunun için FechAll (yazılım hatası olabilir) kullanılması gerek.
Eğer Kullandığın grid standart DBGrid ise bunu TStringGrid ile cast ederek yani
ile row numarasına göre işelm yaptırtabilirsin.
Kolay gele
Eğer Kullandığın grid standart DBGrid ise bunu TStringGrid ile cast ederek yani
Kod: Tümünü seç
TStringGrid(myDBGrid).Row
Kolay gele
ZAGOR TENAY TÜRK'tür... TÜRK kalacak...
Zoru başarırım, İmkansız zaman alır
FreeMan 35.5
Soru sormaya üşenmiyorsan, sorunun çözümünü yazmaya da üşenme !!!
Zoru başarırım, İmkansız zaman alır
FreeMan 35.5
Soru sormaya üşenmiyorsan, sorunun çözümünü yazmaya da üşenme !!!
tablolar bağlantılar hepsi doğrudur hocam sanırım problem IB'den kaynaklanıyor. garip bir sistem kullanıyorum.. interbase6.5-BDE-delphi7mrmcop yazdı:- DBGrid'in sonuçları aldığı DataSource'un Query'sini belirttiğinize eminsiniz değil mi ? Bir de Query Active değilse -1 gelmesi doğal...
TStringGrid(myDBGrid).Row olayıda olmadı.. sanırım BDE biraz burda saçmaladı...
bu yüzden bu güsel renklendirme olayını askıya alıcam galiba...
(ama çok üzülmemek lazım aynı problem exceldede var.
