powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Цвет строк в Гриде
5 сообщений из 5, страница 1 из 1
Цвет строк в Гриде
    #37901867
Ganjubas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Как в гриде раскрасить строки, например, 5, 10, 13, 36.....n одним цветом?

Пробовал так
Занес числа в массив Nzapis

Код: vbnet
1.
2.
3.
4.
for i=1 to kol
thisform.pageframe1.page3.grid1.column1.DynamicBackColor="IIF(LEFT(vidi.name,2)='  ',; 
IIF(RECNO()=Nzapis[i], RGB(0,255,0), RGB(255,255,255)), RGB(200,200,200))" 
endfor


Не получается, каждые раз закрашивается только одна строка, а нужно чтоб все строки, удовлетворяющие условию оставались бы закрашенными.
...
Рейтинг: 0 / 0
Цвет строк в Гриде
    #37901896
IgorNG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ganjubas,

В таблице сделай дополнительно поле с признаком закрашивания, например colfill L.
И ставь в нужной записи .T.
DynamicBackColor="IIF(LEFT(vidi.name,2)=' ',;
IIF(colfill, RGB(0,255,0), RGB(255,255,255)), RGB(200,200,200))"
...
Рейтинг: 0 / 0
Цвет строк в Гриде
    #37901898
tanglir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: sql
1.
2.
3.
da_form.da_grid.SetAll("DynamicBackColor"
 , "iif(trololo,RGB(255,255,140),RGB(200,120,0)"
 , "Column")
...
Рейтинг: 0 / 0
Цвет строк в Гриде
    #37901912
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ты принцип работы DynamicBackColor неправильно понимаешь. Туда записывается выражение которое выполняется не в момент записи, а в момент показа строки.
Соответственно в момент показа i у тебя имеет какое-то одно конкретное значение. Эта строка и подсвечивается.

Замени "RECNO()=Nzapis[i]" на "ascan(Nzapis, RECNO()) != 0"
И цикл FOR у тебя лишний
...
Рейтинг: 0 / 0
Цвет строк в Гриде
    #37902213
Ganjubas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
IgorNGВ таблице сделай дополнительно поле с признаком закрашивания, например colfill L.
И ставь в нужной записи .T.
DynamicBackColor="IIF(LEFT(vidi.name,2)=' ',;
IIF(colfill, RGB(0,255,0), RGB(255,255,255)), RGB(200,200,200))"
Как вариант, можно сделать, но зачем еще одно лишнее поле в таблице)?

Dima TТы принцип работы DynamicBackColor неправильно понимаешь. Туда записывается выражение которое выполняется не в момент записи, а в момент показа строки.
Соответственно в момент показа i у тебя имеет какое-то одно конкретное значение. Эта строка и подсвечивается.

Замени "RECNO()=Nzapis[i]" на "ascan(Nzapis, RECNO()) != 0"
И цикл FOR у тебя лишний
Вот же та функция, которая мне нужна). Всем спасибо
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Цвет строк в Гриде
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]