![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как убрать выделение последней выбранной ячейки StringGrid? [D7, XP]
Magos © (2008-05-28 10:20:00)Подскажите, пожалуйста, как убрать выделение цветом последней активной ячейки в StringGrid? а то после работы с ним ячейка окрашивается в синий цвет. Спасибо.
{RASkov} (2008-05-28 12:09:00) [1]> [4] Magos (28.05.08 11:48)
См событие [1]
+ проверку параметра State на gdSelected и .... вобщем примерно вот так:
procedure TForm.StringGridOnDrawCell(..);
begin
if not Sender is TStringGrid then Exit;
with TStringGrid(Sender) do begin
if gdSelected in State and Focused then
Canvas.Brush.Color:=clHighlight
else Canvas.Brush.Color:=Color;
Canvas.FillRect(Rect);
....Дальше "в ручки" рисуем содержимое ячейки...
end;
end;
Magos (2008-05-28 11:48:00) [2]имеет StringGrid, состоящий из 10 столбцов и одной строки. Мышью или клавой выбирается ячейка и если после этого выбрать другой элемент (пусть будет другой грид или поле эдит, неважно) т.е. грид становится не активным, то ячейка которая была выбрана до этого выделяется в неактивном уже гриде синим цветом.
Все ячейки одного цвета, но та которая была активная последняя становится выделенным синим...
Вроде объяснил...
{RASkov} (2008-05-28 11:34:00) [3]> [2] Magos (28.05.08 11:19)
А выделенная активная последняя - это не нарисованная ячейка? :)
Magos (2008-05-28 11:19:00) [4]ну это будет цвет нарисованной ячейки,а я говорю о выделении последней активной
Painter (2008-05-28 11:06:00) [5]Можно рисовать самому, на событии
OnDrawCell. Там хоть в синий, хоть вclWindow, в соответствии с Вашими пожеланиями :)