Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Общие вопросы > Убрать выделение ячейки из StrinGrid


Автор: Instal 14.7.2008, 05:13
Подскажите плиз как убрать выделение ячейки из StrinGrid.
Т.е. у меня самая верхняя левая ячейка выделяется синим. 
Точно также как выделяется весь ряд ячеек если в свойствах поставить значение goRowSelect = True.
Мне нужно, чтобы ни одна ячейка не была выделена .

Автор: Instal 14.7.2008, 16:13
Плз кто-нибудь  smile 

Автор: deswars 15.7.2008, 09:06
Насколько я заю, одна из ячеек должна быть выделена, но можна сделать с помощю усановки фоеуса выделение штриховкой

Автор: Instal 15.7.2008, 16:16
Спасибо, сделаю штриховкой хотя бы  smile 

Автор: VICTAR 15.7.2008, 17:36
Как вариант, заменить TStringGrid на TDrawGrid и юзать OnDrawCell 

Автор: deswars 16.7.2008, 10:21
Это вариант. Не думаю, что надо будет долго сидеть.

Автор: Instal 18.7.2008, 05:08
Премного благодарен уважаемые форумчане за ответы!
В результате поиска по OnDrawCell наткнулся на старый топик http://forum.vingrad.ru/forum/topic-31653/unread-1.html
где г-н p0s0l даёт готовый рабочий код решения проблемы  smile 

Цитата

Ан нет, поспешил я smile - там его дорабатывать надо...
Можно так попробовать:
Код

procedure MyProc(S : TStringGrid);
var gr : TGridRect;
begin
  FillChar (gr, SizeOf(gr), -1);
  S.Selection := gr;
end;

procedure TForm1.StringGrid1Exit(Sender: TObject);
begin
  MyProc (Sender as TStringGrid);
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
  MyProc (StringGrid1);
  MyProc (StringGrid2);
...
end;
Т.е. вешаем на OnExit обработчик (единый для всех гридов) и в OnCreate формы убираем выделение...

Чуть не забыл:
goRangeSelect = False, 
goDrawFocusSlected = False,
goRowSelect = False

Автор: sabbatazh 18.7.2008, 12:41
Попробуй так:

Код

var 
    hGridRect: TGridRect;
.....

  hGridRect.Top := -1;
  hGridRect.Left := -1;
  hGridRect.Right := -1;
  hGridRect.Bottom := -1;
  StringGrid1.Selection := hGridRect;



Даный код снимает выделение с ячеек...

можешь вкинуть в криат ивсе увидишь.... ну а там пользуй де хочешь....

Автор: Instal 18.7.2008, 20:14
Спасибочки!
Еще одно красивое решение  smile 

Автор: sabbatazh 19.7.2008, 01:05
нема за шо....

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)