![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Выделение Stringgrid [D6]
Solov © (2006-11-29 12:30:00)Здраствуйте.
Скажите, кто-нибудь знает, как сделать
выделение в FixedCols и FixedRows StringGrid похожим на Excel,
чтобы в зависимости в выделенного диапазона,
столько же выделялось в Fixed, и не мерацало.
procedure TForm1.ssDrawCell(Sender: TObject; ACol, ARow: Integer;
Rect: TRect; State: TGridDrawState);
var
head:TRect;
begin
with ss.Canvas do
begin
begin
brush.Color:=clred;
Head.Top:=0;
Head.Bottom:=ss.RowHeights[0];
Head.Left:=ss.CellRect(ss.Selection.Left,ss.Selection.Top).Left;
Head.Right:=ss.CellRect(ss.Selection.Right,ss.Selection.Top).Right;
FillRect(Head);
invalidate;
end;
end;
end;
Но это происходит, только при изменении размеров столцов или строк.
Как сделать, чтобы это было при выделении и не мерцало.
Спасибо.
ЮЮ (2006-11-30 03:57:00) [1]invalidate, по идее нужен, в обработчике на изменение выделение, а не в обработчике рисования. Тогда при тзменении выделения грид и перерисуется.