Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / FoxPro, Visual FoxPro Новый топик    Ответить
 Изменение цвета строки GRID  [new]
Alex-ZZZ
Member

Откуда:
Сообщений: 179
GRID заполняеться данными из таблицы uzeru, как в зависимости от значения данных в таблице изменить цвет строки GRID.

Пытаюсь делать так в init grid-а:

thisform.grid1.SetAll("DynamicForeColor", ;
	   "IIF(ALLTRIM(THIS.COLumn2.Text1.Value)="ЮЗЕР_1" ,;
	            RGB(255,0,0), RGB(0,0,0))", "Column") 

Пишет ошибку - Unrecognized command verb.

thisform.grid1.SetAll("DynamicForeColor", ;
	   "IIF(ALLTRIM(uzeru.uzer)="ЮЗЕР_1" ,;
	            RGB(255,0,0), RGB(0,0,0))", "Column") 

Тоже самое. Подскажите как надо.
26 авг 08, 09:47    [6108150]     Ответить | Цитировать Сообщить модератору
 Re: Изменение цвета строки GRID  [new]
Dima T
Member

Откуда:
Сообщений: 15279
Двойные кавычки в двойных никак не указать :)

thisform.grid1.SetAll("DynamicForeColor", ;
	   "IIF(ALLTRIM(THIS.COLumn2.Text1.Value)='ЮЗЕР_1' ,;
	            RGB(255,0,0), RGB(0,0,0))", "Column") 
26 авг 08, 09:58    [6108185]     Ответить | Цитировать Сообщить модератору
 Re: Изменение цвета строки GRID  [new]
Alex-ZZZ
Member

Откуда:
Сообщений: 179
Dima T
Двойные кавычки в двойных никак не указать :)


Точно спасибо )))
26 авг 08, 10:07    [6108216]     Ответить | Цитировать Сообщить модератору
 Re: Изменение цвета строки GRID  [new]
Alex-ZZZ
Member

Откуда:
Сообщений: 179
а как вписать несколько условий чтобы раскрасить в разные цвета по разным значениям?

thisform.grid1.SetAll("DynamicBackColor", ;
	"IIF(ALLTRIM(Uzeru.uzer)='uzer_1' ,;
	      RGB(255,0,0), RGB(255,255,255))" and;
	           "IIF(Uzeru.vproge=1 and ALLTRIM(Uzeru.uzer)<>'uzer_1' ,;
	                 RGB(232,255,232), RGB(255,255,255))", "Column") 

но "and" не подходит как и "," между iif.
26 авг 08, 10:24    [6108293]     Ответить | Цитировать Сообщить модератору
 Re: Изменение цвета строки GRID  [new]
проходящий.
Guest
Alex-ZZZ
но "and" не подходит как и "," между iif.

И как предположительно должна работать конструкция с and или запятой между iif? Что она должна возвращать? Какое занчение в этом случае должно быть установлено как цвет?
А еще есть свойства Dynamic*, которые позволяют задать условие именно динамической раскраски без постоянного переприсваивания новых значений.
26 авг 08, 10:37    [6108350]     Ответить | Цитировать Сообщить модератору
 Re: Изменение цвета строки GRID  [new]
Dima T
Member

Откуда:
Сообщений: 15279
Несколько вложенных IIF() или свою функцию сделай.
IIF(Условие1, цвет1, IIF(Условие2, цвет2, цвет3))

Если VFP9 то ICASE() еще есть.
26 авг 08, 10:43    [6108388]     Ответить | Цитировать Сообщить модератору
 Re: Изменение цвета строки GRID  [new]
Alex-ZZZ
Member

Откуда:
Сообщений: 179
Dima T
Несколько вложенных IIF() или свою функцию сделай.
IIF(Условие1, цвет1, IIF(Условие2, цвет2, цвет3))


Так пробовал почемуто не заработало.

автор
Если VFP9 то ICASE() еще есть.


а че за функция в моем справочнике такой не нашел, можно про нее поподробнее

И вот еще что, при нажатии на ячейку цвет которой был изменен программно, она меняет свой цвет и цвет шрифта, как закрепить за ней тот цвет который я ей присвоил в зависимости от значения?
26 авг 08, 11:18    [6108618]     Ответить | Цитировать Сообщить модератору
 Re: Изменение цвета строки GRID  [new]
Dima T
Member

Откуда:
Сообщений: 15279
Alex-ZZZ
а че за функция в моем справочнике такой не нашел, можно про нее поподробнее

Тут почитай. Функция ICASE() появилась только в VFP9 может у тебя другая версия фокса?

Alex-ZZZ
И вот еще что, при нажатии на ячейку цвет которой был изменен программно, она меняет свой цвет и цвет шрифта, как закрепить за ней тот цвет который я ей присвоил в зависимости от значения?

Когда встаешь на ячейку появляется текстбокс (например Grid.Column1.Text1), вот с его цветами и разбирайся.
26 авг 08, 11:40    [6108759]     Ответить | Цитировать Сообщить модератору
Все форумы / FoxPro, Visual FoxPro Ответить