![]() |
|
|
![]()
|
|
| MacTep |
|
||||||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1292 Регистрация: 4.8.2003 Где: г. Самара Репутация: нет Всего: 4 |
Привет всем! Хочу сделать так, чтобы цвет строчек в DBGrid был разным. Т.е., допустим, первая строчка светло серая, вторая темно серая, и так далее. Вот код:
Все отлично работает! Но когда мне надо сделать выборку в данной базе, то происходит следующее: номера записей различны и какие-то записи подсвечиваются в таблице светло-серым, а какие-то темно-серым цветом, т.е. не по порядку, а вразнобой. Может идти 3 светло-серых строки, а потом 5 темно-серых. А мне надо, чтобы и во всех режимах работы DBGrid чередовался цвет строк. Как этого добиться? Пытался меня строку:
на
но это мне не подходит. Работает в таком случает программа как-то странно... Посоветуйте, пожалуйста, что-нибудь! -------------------- (A)bort, (R)etry, (I)gnore = Haфиг, Heфиг, Пoфиг ... :) |
||||||
|
|||||||
| ~FoX~ |
|
|||
![]() НЕ рыжий!!! ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2819 Регистрация: 8.10.2003 Где: Зеленоград Репутация: 4 Всего: 68 |
MacTep
Придется перерисовывать каждый раз при выборке. |
|||
|
||||
| MacTep |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1292 Регистрация: 4.8.2003 Где: г. Самара Репутация: нет Всего: 4 |
~FoX~, каким же образом перерисовывать? Я же смотрю по номеру записи, а номер записи всегда фиксирован!
-------------------- (A)bort, (R)etry, (I)gnore = Haфиг, Heфиг, Пoфиг ... :) |
|||
|
||||
| offline |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 474 Регистрация: 7.2.2005 Репутация: 7 Всего: 7 |
Если хочешь сделать "зебру" из DBGrid, то перейди на EHLib (GridEh), там и пример есть, как "зебра" делается
|
|||
|
||||
| ~FoX~ |
|
|||
![]() НЕ рыжий!!! ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2819 Регистрация: 8.10.2003 Где: Зеленоград Репутация: 4 Всего: 68 |
kirilllius Так он и юзает ehLib
MacTep Ты каким макаром выборку делаешь? Если хочешь зебру надо смотреть не на номер записи в БД, а на номер записи в рекордсете. |
|||
|
||||
| offline |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 474 Регистрация: 7.2.2005 Репутация: 7 Всего: 7 |
Ну так пусть смотрит первый пример, а именно вкладка DBLIST, чеквокс Dichromatic
|
|||
|
||||
| MacTep |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1292 Регистрация: 4.8.2003 Где: г. Самара Репутация: нет Всего: 4 |
-------------------- (A)bort, (R)etry, (I)gnore = Haфиг, Heфиг, Пoфиг ... :) |
|||
|
||||
| offline |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 474 Регистрация: 7.2.2005 Репутация: 7 Всего: 7 |
Вот код на событие onGetCellParams у грида
Взято из примера
|
|||
|
||||
| korotkov |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 39 Регистрация: 17.6.2006 Репутация: нет Всего: нет |
>Вот код на событие onGetCellParams у грида
в этом случае чепуха при фильтрации получается FIBPlus 6.4 + EhLib 4.1 Build 4.1.4 Russian version при применении фильтра полосатость EhDBGrida исчезает, но при отмене фильтра также не появляется :( как это побороть? Added OddRowColor and EvenRowColor property to draw odd and even rows with different colors. It works only if sequence numbers are available for DataSet(DataSet.IsSequenced = True) and DataSet.RecNo return valid info. неужели нет решения? хотябы полосатость вернуть при отмене фильтра и то уже дело - отличать фильтрованные данные от полных, но как!? Это сообщение отредактировал(а) korotkov - 26.4.2007, 09:06 |
|||
|
||||
| SergeBS |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1111 Регистрация: 10.6.2005 Где: Владимир Репутация: 11 Всего: 22 |
korotkov,
DelphiKingdom - статья "Разноцветный DBGrid". В DRKB тоже есть. |
|||
|
||||
| korotkov |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 39 Регистрация: 17.6.2006 Репутация: нет Всего: нет |
Разноцветный D B G R I D http://www.delphikingdom.com/asp/viewitem.asp?catalogid=168 По следам «полосатого DBGrid» http://www.delphikingdom.com/asp/viewitem.asp?catalogid=1193 Дополнение по теме 'полосатый DBGrid' http://www.delphikingdom.com/asp/viewitem.asp?catalogid=170 >и что такое DRKB? http://www.drkb.ru/ скачать не могу, сижу на GSM GPRS инете :( интересует полосатая раскраска EhDBGrid именно при фильтрации и после, а не раскраска отдельных ячеек и их текста в зависимости от значения ячейки, это мы умеем ;) Это сообщение отредактировал(а) korotkov - 26.4.2007, 09:05 |
|||
|
||||
| Rodman |
|
|||
|
CIO ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 6144 Регистрация: 7.5.2006 Где: Ukraine ⇛ Kyiv ci ty Репутация: 22 Всего: 122 |
я так делал... |
|||
|
||||
| korotkov |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 39 Регистрация: 17.6.2006 Репутация: нет Всего: нет |
если можно поясни идею if(DataCol=0)then Inc(StrNum);
что есть StrNum когда он а обнуляется? |
|||
|
||||
| Rodman |
|
|||
|
CIO ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 6144 Регистрация: 7.5.2006 Где: Ukraine ⇛ Kyiv ci ty Репутация: 22 Всего: 122 |
это для чередования строк, грид рисует каждый в каждой строке столбцы, а потом переходит на следующую строку...
просто поэкспериментируй и увидишь разницу... Покрайней мере я другого методы не нашел... |
|||
|
||||
| korotkov |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 39 Регистрация: 17.6.2006 Репутация: нет Всего: нет |
... это понятно что чередования , не понятна химия if(DataCol=0)then Inc(StrNum); и где, когда обнуляется StrNum???
этим ты поборол неполосатость при фильтрации и при снятии фильтра или просто сделал полосатую таблицу? так с версии 3.6 она делается полосатой штатными средствами. Это сообщение отредактировал(а) korotkov - 26.4.2007, 12:25 |
|||
|
||||
![]()
|
| Правила форума "Delphi: Базы данных и репортинг" | |
|
|
Запрещено: 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами Обязательно указание: 1. Базы данных (Paradox, Oracle и т.п.) 2. Способа доступа (ADO, BDE и т.д.)
FAQ раздела лежит здесь! Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Vit, Петрович. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Базы данных и репортинг | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |