![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
![]() как сделать так, чтобы ячейка содержащая четную цифру подсвечивалась бы цветом - например желтым?
|
#2
|
|||
|
|||
![]() Обрабатывай событие OnDrawCell.
|
#3
|
||||
|
||||
![]() как-то вот так
![]() Код:
procedure TForm1.StringGrid1DrawCell(Sender: TObject; ACol, ARow: Integer; Rect: TRect; State: TGridDrawState); var s: string; i: integer; begin s := (Sender as TStringGrid).Cells[ACol, ARow]; with (Sender as TStringGrid).Canvas do begin try // нужно, в случае если в ячейке не число, что бы не выскакивала ошибка i := StrToInt(s); if (i / 2) = (i div 2) then Font.Color := clYellow {если четное - то желтный цвет} else Font.Color := clBlue; {либо синий} except // если в ячейке не число Font.Color := clRed; // то пишем красным end; TextOut(Rect.Left + 2, Rect.Top + 2, s); // "отрисовуем" текст end; end; Коли навчався в школі я - в мені росли мозгЫ. КудИж вони поділися? гы-гы гы-гы гы-гы... ICQ: 593977748 Nick: Marvel Последний раз редактировалось Marvel, 02.07.2010 в 00:07. |
#4
|
|||
|
|||
![]() Вот так, наверное, лучше. Тем более, нужно же, чтобы ячейка заливалась цветом, а не цвет текста менялся.
Код:
procedure TForm1.StringGrid1DrawCell(Sender: TObject; ACol, ARow: Integer; Rect: TRect; State: TGridDrawState); var X: Integer; begin if TryStrToInt(StringGrid1.Cells[ACol, ARow], X) and (X mod 2 = 0) then with StringGrid1.Canvas do begin Brush.Color := clYellow; FillRect(Rect); TextOut(Rect.Left + 2, Rect.Top + 2, StringGrid1.Cells[ACol, ARow]); end; end; Код:
(Sender as TStringGrid).Cells[ACol, ARow] Последний раз редактировалось Kapitoshka438, 02.07.2010 в 01:24. |
#5
|
|||
|
|||
![]() спасибо большое всем.
|
#6
|
||||
|
||||
![]() ну дык, я человеку просто показывал самый простой и понятный способ
![]() Коли навчався в школі я - в мені росли мозгЫ. КудИж вони поділися? гы-гы гы-гы гы-гы... ICQ: 593977748 Nick: Marvel |