![]() |
|
#1
|
||||
|
||||
![]() Всё просто, есть DBGride завязанный на БД Акцессе. Нужно, чтоб строка окрашивалась в зависимости от значения в колонке 'Результат', 'В процессе' строка окрашивалась в жёлтый, 'Выкуплен'-зелёный, а 'Вернулся'-красный. Еслиб был integer сделал бы через case, но тут String . . . Расмотрю любые варианты если можно с кодом.
|
#2
|
|||
|
|||
![]() Код:
procedure TForm1.StringGrid1DrawCell(Sender: TObject; ACol, ARow: Integer; Rect: TRect; State: TGridDrawState); begin //если значение ячейки = 'В процессе', тогда желтая строка if Pos('В процессе',StringGrid1.Cells[1,1])<>0 then begin StringGrid1.Canvas.Brush.Color := clYellow; // закрашиваем третью строку if ARow = 2 then StringGrid1.Canvas.FillRect(Rect); end; end; |
#3
|
||||
|
||||
![]() Можно немного упростить:
для первого проверять наличие "сс" для 2 - "ы" для 3 - "ул" Некоторые программисты настолько ленивы, что сразу пишут рабочий код. Если вас наказали ни за что - радуйтесь: вы ни в чем не виноваты. |