C++ Builder
| Главная | Уроки | Статьи | FAQ | Форум | Downloads | Литература | Ссылки | RXLib | Диски |

 
разноцветный StringGrid
SergeyD
Отправлено: 23.10.2003, 15:19


Не зарегистрирован







Привет.
Кто знает как выделить некоторые ячейки в StringGrid'е цветом или другим шрифтом (размером). Такая расскраска должна сохраняться все время, пока открыта форма. Можно ли так сделать?
Спасибо.
Gedeon
Отправлено: 23.10.2003, 17:16


Ветеран

Группа: Модератор
Сообщений: 1742



Можно, но в стандартном StringGrid — это геморройное занятие, рекомендую использовать AdvStringGrid от TMSSoftware.
Borgir
Отправлено: 24.10.2003, 06:40


Дежурный стрелочник

Группа: Участник
Сообщений: 48



Нет там ничего особо геморройного. В обработчике события OnDrawCell пишешь примерно следующее:
CODE
void __fastcall TMainForm::StringGrid1DrawCell(TObject *Sender, int ACol, int ARow, TRect &Rect, TGridDrawState State)
{
if(StringGrid1->Cells[ACol][ARow]=="000")StringGrid1->Canvas->Font->Color=clRed;
else StringGrid1->Canvas->Font->Color=clWindowText;
StringGrid1->Canvas->FillRect(Rect);
StringGrid1->Canvas->TextOut(Rect.left,Rect.Top,StringGrid1->Cells[ACol][ARow]);
}

Пример выделяет красным цветом клетки, значение в который равно "000"
Aptem
Отправлено: 24.10.2003, 07:15


Мастер участка

Группа: Участник
Сообщений: 349



QUOTE (Gedeon @ 23/10/2003, 18:18)
рекомендую использовать AdvStringGrid от TMSSoftware

Отличная вещь! Сам раньше парился с обычным StringGrid, нашел AdvStringGrid и вся запарка прекратилась ! Если у тебя нет этого компонента, то могу послать на почту!
Borgir
Отправлено: 24.10.2003, 08:34


Дежурный стрелочник

Группа: Участник
Сообщений: 48



А нельзя ли ссылку, где это чудо можно скачать БЕСПЛАТНО. а то на сайте производителя пакет компонентов стоит "всего 397$"
Gedeon
Отправлено: 24.10.2003, 09:34


Ветеран

Группа: Модератор
Сообщений: 1742



Давай мыло, пришлю
Gedeon
Отправлено: 24.10.2003, 09:49


Ветеран

Группа: Модератор
Сообщений: 1742



На этом сайте же есть
http://cbuilder.ru/Upload/
Только вот закачать туда у меня чего-то не получается, наверное наш админ чего-то наадминил

Вернуться в Вопросы программирования в C++Builder