дразнещ проблем с оцветяването на DBGrid

3 отговора 199 прегледа
#1

дразнещ проблем с оцветяването на DBGrid

става въпрос за оцветяването на четни и нечетни редове
при първоначално извеждане на данните всичко е ОК, но когато филтрирам данните по някакъв критерий и ДБГрида си разбърква оцветката пуска 2-3 реда с цвета за нечетни редове после 3-4 реда с цвета четни много рядко някой път да е нормално. филтрирам с SQL Query , a DBGrida е копонент на EhLIb с вградени функции за оцветяване на Odd/Even rows , ползвах и друг метод за оцветяване също известен от И-нет пак от руски сайт който рисува чрез OnDrawCell , но резултата е същия. Ако някой знае каде е проблема , моля да помогне

Отговор
в отговор на otoboto #2

Re: дразнещ

ТелеПатките, които знаят какво си направил се изпокриха заради Грипа.
Обясни какво си направил, ако искаш смислен отговор.

Отговор
в отговор на Йopдaн #3

Тоя проблем съм го заобиколи от години

Тоя проблем съм го заобиколи от години.
Ако има филтър - няма четни нечетни - всичко си го оцветявам леко по-тъмно.
Все пак, ако го иамислиш - сподели :)

ПП
Да му се и невидяло на Дир-а !

Отговор
в отговор на NikB #4

Напипах гооо

значи аз го бях направил :

Query1.Filter:= 'NAME =' + ' ''' + ComboBox1.Text + '''';
Query1.Filtered := true;

и при това положение оцветява правилно само ако редовете в Грида са под 10 на брой и са нечетно число , при всички останали случаи си ги оцветява как му доде.

и после ми направи вчепетление че имам един едитБОХ дето филтрира с SQL заявка и при него оцветяването в грида е правилно без значение от броят на редовете. и затова си направих филтара така :

Query1.SQL.Clear;
Query1.SQL.Add('select * from xxxx where NAME = '+' ''' + ComboBox1.text + ''' order by BROI');
Query1.Close;
Query1.Open;

и сега всичко е наред.

Абе то ако човек си знаеше SQL командите нямаше да пита ...

Редактирано от otoboto на

Отговор