![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Прорисовка таблицы (StringGrid) [D6, Win95/98, Win2k]
ksa2002 © (2004-07-09 06:25:00)StringGrid1DrawCell (Sender: TObject; ACol, ARow: Integer; Rect: TRect; State: TGridDrawState);
Хочу запустить прорисовку вручную , но не все параметры могу задать , подскажите как задать параметр Rect ?
ЮЮ (2004-07-09 08:35:00) [1]ksa2002 © (09.07.04 08:01) [3]
>Не непоняли я хочу так...
>StringGrid1DrawCell (StringGrid1,1,red_sg_1,RECT,0);
А вот этого уже не надо. StringGrid сам перерисует все что нужно после изменения его Cells.
Максимум, что стоит сделать StringGrid1.Repaint или подобное
KADAN (2004-07-09 08:28:00) [2]Rect можно задать, пробежавшись циклом по RowHeights и ColWidths, при этом не забыв учесть GridLineWidth.
Но неужели это обязательно, прорисовка сама вызовется когда ей надо, с заданным Rect'ом. Или, если уж это обязательно, просто вызвать Refresh или Repaint.
ksa2002 (2004-07-09 08:01:00) [3]Не непоняли я хочу так...
if (length(trim(DBGrid2.Columns[0].Field.AsString)))>0 then
begin
Stringgrid1.Cells[5,ib7c]:=(DBGrid2.Columns[0].Field.AsString);
red_sg_1:=ib7c;
end;
StringGrid1DrawCell (StringGrid1,1,red_sg_1, RECT ,0);
end;
Как задать Rect
KADAN (2004-07-09 07:49:00) [4]Rect за тебя уже задали :)
if (acol=2) and (arow=1) then begin
StringGrid1.Canvas.Brush.Color:=clred;
StringGrid1.Canvas.Rectangle(Rect);
StringGrid1.Canvas.TextOut(rect.Left+2,rect.Top+2,':)');
end;
gek (2004-07-09 07:48:00) [5]Интересно, а разве он не задан?