|
|
|
DBGrid + color
|
|||
|---|---|---|---|
|
#18+
Я раскрашиваю строки грида по условию... if (QMain->FieldByName("f_company")->Value == 1) { GridMain->Canvas->Font->Color=clBlue; GridMain->Canvas->FillRect(Rect); if (Column->Alignment==taRightJustify) { GridMain->Canvas->TextOut(Rect.Right-2-GridMain->Canvas->TextWidth(Column->Field->Text), Rect.Top+2,Column->Field->Text); } else { GridMain->Canvas->TextOut(Rect.Left+2,Rect.Top+2,Column->Field->Text); } во всех остальных строках (цвет фонта чёрный) при наезде курсора цвет фонта меняется на белый, а при наезде на раскрашенные строки ничего не происходит, т.е. получается синий фонт на синем фоне. Так как бы мне при наезде на раскрашенную строку менять цвет фонта на белый? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.12.2003, 11:33 |
|
||
|
DBGrid + color
|
|||
|---|---|---|---|
|
#18+
У грида в событии по которому ты раскрашиваешь есть параметр Highlight, означающее выделена строка или нет. Я бы вообще не раскрашивал выделенные строки. Тогда это само получится. Тебе это надо? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.12.2003, 14:40 |
|
||
|
DBGrid + color
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. 2. 3. 4. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.12.2003, 19:10 |
|
||
|
DBGrid + color
|
|||
|---|---|---|---|
|
#18+
Случайный прохожий: Что-то не проходит... условие не србатывает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2003, 09:26 |
|
||
|
DBGrid + color
|
|||
|---|---|---|---|
|
#18+
У меня DBGrid, событие OnDrawColumnCell. Нормально работает. Какой у тебя грид и событие? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2003, 11:08 |
|
||
|
DBGrid + color
|
|||
|---|---|---|---|
|
#18+
Обыкновенный DBGrid. Событие: OnDrawColumnCell но при наезде курсором на запись if (State.Contains(gdFocused)) false ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2003, 11:18 |
|
||
|
DBGrid + color
|
|||
|---|---|---|---|
|
#18+
Ура-а-а-а !!! Заработало! Спасибо большое. Вот так я заделал: if (QMain->FieldByName("f_company")->Value == 1) { if (State.Contains(gdFocused)) GridMain->Canvas->Font->Color=clWhite; else GridMain->Canvas->Font->Color=clBlue; GridMain->Canvas->FillRect(Rect); if (Column->Alignment==taRightJustify) { GridMain->Canvas->TextOut(Rect.Right-2-GridMain->Canvas->TextWidth(Column->Field->Text), Rect.Top+2,Column->Field->Text); } else GridMain->Canvas->TextOut(Rect.Left+2,Rect.Top+2,Column->Field->Text); } ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2003, 11:27 |
|
||
|
|

start [/forum/topic.php?fid=57&msg=32340820&tid=2035706]: |
0ms |
get settings: |
8ms |
get forum list: |
10ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
197ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
49ms |
get tp. blocked users: |
1ms |
| others: | 229ms |
| total: | 513ms |

| 0 / 0 |
