Polya
Принятый Кодер
- Регистрация
- 8 Июн 2016
- Сообщения
- 47
- Баллы
- 50
Как правильно распределить 30 дней для 3 цветов
от 1 до 15 зеленый
от 15 до 25 желтый
от 25 до 30 красный
Не могу придумать как это сделать.
вот я думаю так делать, но в условиях не формат даты
от 1 до 15 зеленый
от 15 до 25 желтый
от 25 до 30 красный
Не могу придумать как это сделать.
вот я думаю так делать, но в условиях не формат даты
Код:
procedure TWindow.StringGrid1DrawCell(Sender: TObject; ACol, ARow: Integer;
Rect: TRect; State: TGridDrawState);
var
X: TDate;
begin
with StringGrid1 do
begin
try
X := StrToDate(Cells[ACol, ARow]);
if X < 15 then
Canvas.Brush.Color := clGreen;
if X > 15 then
Canvas.Brush.Color := clYellow;
if X > 25 then
Canvas.Brush.Color := clRed ;
except
end;
Canvas.FillRect(Rect); // Текст тоже будет закрашен, его нужно перерисовать:
Canvas.TextOut(Rect.Left + 2, Rect.Top + 2, Cells[ACol, ARow]);
end;
end;