XDBGrid - Malowanie tła pod tekstem (Canvas)

XDBGrid - Malowanie tła pod tekstem (Canvas)
V1
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 2
0

Witajcie.
Powiedzmy że mam XDBGrida (X-Components), a w nim dane z kilku tabel bazy SQL.
Chciałbym uzyskać efekt takiego samego gradientu pod każdym wierszem osobno (powtarzalnie) z dodatkową możliwością zmiany koloru danego wiersza pod kątem danych z tego DBGrida.
Komponent ten pozwala na zastosowanie gradientu, ale tylko do co drugiego wiersza (a przynajmniej nie namierzyłem innej opcji) i wygląda to zadowalająco, ale...
Ponieważ muszę w tym DBGridzie z powodów funkcjonalnych kolorować wiersze w oparciu o dane z tabeli i wtedy jeśli ustawię taki gradient robi się straszny bałagan w kolorach, więc próbuję ręcznie taki efekt uzyskać na wszystkich wierszach.
Mam zdarzenie "onDrawColumnCell", gdzie mogę sobie pokolorować tło jak chcę, z bitmapy czy png, ale gdy na końcu tego zdarzenia daję procedurę "DefaultDrawColumnCell", aby wypełnić komórkę danymi, dodaje mi się też tło pod tekstem (gradient widać tylko w miejscach gdzie powinny się rysować linie rozdzielające kolumny i wiersze. Mogę zmieniać kolor tego tła za pomocą "canvas.brush.color", ale nie wiem jak zrobić aby go nie było.

LA
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 477
0

to napisz do Szyszki lub sprawdź w dokumentacji.

flowCRANE
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Tuchów
  • Postów: 12269
0
viper_1990 napisał(a):

[…] ale gdy na końcu tego zdarzenia daję procedurę "DefaultDrawColumnCell", aby wypełnić komórkę danymi, dodaje mi się też tło pod tekstem […] Mogę zmieniać kolor tego tła za pomocą "canvas.brush.color", ale nie wiem jak zrobić aby go nie było.

Nie wołaj tej metody i sam zajmij się renderowaniem tekstu.

  • Rejestracja: dni
  • Ostatnio: dni
0

użyj onPaintColumnCell

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.