Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.05.01;
Скачать: CL | DM;

Вниз

DBGrid   Найти похожие ветки 

 
HanIP   (2003-04-15 09:58) [0]

Есть поле в таблице Flag:boolean как сделать так что если оно false то строка грида должна окраситься в красный или любой другой цвет.


 
evvcom ©   (2003-04-15 10:09) [1]

OnDrawColumnCell


 
HanIP   (2003-04-15 10:21) [2]

пишу так
DBGrid1.Canvas.brush.Color:=clRed;
if Main.FieldbyName("Flag").AsBoolean then
DBGrid1.Canvas.FillRect(Rect);
и текста не видно


 
MBo ©   (2003-04-15 10:25) [3]

или сам выводи TrxtOut или DefaltDrawing вызывай
пример в хелпе на TCustomDBGrid.OnDrawDataCell


 
evvcom ©   (2003-04-15 10:29) [4]

А Canvas.TextOut кто делать будет?


 
MsGuns ©   (2003-04-15 11:34) [5]

Вот кусок, который красит выбранную строку грида в синий (стандартный), если сам грид в фокусе, и серый, если нет. Фон грида "баксовый" независимо от того, в фокусе грид или нет.
Тебе же надо перед определением цвета проверять содержимое соотв.поля - флажка.

Св-во Option включает dgAlwaysShowSelection, dgRowSelect


procedure TForm1.grSuperDrawColumnCell(Sender: TObject; const Rect: TRect;
DataCol: Integer; Column: TColumn; State: TGridDrawState);
{
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
! Выражаю огромную благодарность Леночке Филипповой за ее превосходную !
! статью в "Королевстве Дельфи" "ПОЛОСТАЫЙ ГРИД" от 12 апреля 2000 г. !
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
}
var
BkgColor: TColor;
begin
if not (gdSelected in State) then
BkgColor := clMoneyGreen // Для не текущей строки
else
if TDBGrid(Sender).Focused then
BkgColor := clDefault // Черный для текущей строки
else
BkgColor := clMedGray; // Серый для текущей строки
TDBGrid(Sender).Canvas.Brush.Color:=BkgColor;
TDBGrid(Sender).DefaultDrawColumnCell(Rect,DataCol,Column,State);
end;



Страницы: 1 вся ветка

Текущий архив: 2003.05.01;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.01 c
1-562
AndrewK
2003-04-16 14:15
2003.05.01
Как создать форму из dfm?


14-756
Soft
2003-04-13 01:24
2003.05.01
Мы славяне. Других таких нет.


14-764
Михайлов Антон
2003-04-13 19:33
2003.05.01
MainMenu


1-511
Vitek
2003-04-20 20:33
2003.05.01
Как сделать окно активным?


7-810
nickn
2003-03-10 13:45
2003.05.01
Интересный вопрос по работе с COM портом