Страница 1 из 1
Закрасить всю строку в browse
Добавлено: 11 дек 2008, 21:03
galover
Всем привет! В зависимости от некоторого условия подкрашиваю строки в browse. Проблема в том, что не все ячейки остаются закрашенными. Т.е. если ячейка пустая (стоит '' или значение отсутствует в подцепляемой таблице) то ячейка остается неподкрашенной. Как можно пофиксить такое поведение? Спасибо!
Добавлено: 12 дек 2008, 00:38
edward_K
1.прописать font перед списком полей
2. подсвечивать не шрифт, а фон
Добавлено: 12 дек 2008, 10:33
galover
edward_K
1) font и так стоит перед списком полей
2) а как? сейчас вот такой код у меня:
Код: Выделить всё
fields
{ font = { color = GetFontColor(); bold = tblUsers.SessionsCount > 0; backColor = GetBackColor(); } };
Добавлено: 13 дек 2008, 16:00
edward_K
а что в GetBackColor?
при том надо помнить что если обращаетесь к несуществующей записи возникает исключение и вычисление выражения прерывается.
надо проверять по isvalid
Добавлено: 13 дек 2008, 16:17
m0p3e
И если у поля свой атрибут BackColor, то он перекрывает общий.
Добавлено: 15 дек 2008, 11:09
Den
edward_K писал(а):1.прописать font перед списком полей
2. подсвечивать не шрифт, а фон
Был бы очень признателен за пример подсветки фона а не ШРИФТА...
В <атрибутах поля> имеем только :
<атрибуты-шрифта> - атрибуты шрифта. Синтаксис:
<атрибуты-шрифта> = {font = {
bold = <булевское-выражение>;
italic = <булевское-выражение>;
color = <целочисленное-выражение>;
backColor = <целочисленное-выражение>;
} }
Т.е. чтобы был, скажем, покрасить нужным цветом бэкграунд, я так понимаю, необходимо наличие значения в конкретном поле...
Re: Закрасить всю строку в browse
Добавлено: 10 апр 2017, 07:45
Алексей
Стандартном браузере при перемещении по строчкам текущая строка подсвечивается.
Но если использовать параметр шрифта backColor и поставить его по условию, то для стандартных значений строчки браузера подсвечиваются, а если я передаю туда значение отличное от 0, красный какой-нибудь например, то при установке курсора на строку она не подсвечивается.
Это можно как то решить?