2017-01-18 14 views
3

Кто-нибудь знает, как отменить выбор ячейки в FireMonkey TStringgrid (другими словами, мне нужно знать, какая ячейка выбрана и как отменить выбор) ...?Как отменить выбор ячейки в FireMonkey TStringgrid

Мы используем Delphi Berlin 10,1

Спасибо заранее.

+0

Параметр 'Selected' свойство дает выбранный индекс строки. Свойство «ColumnIndex» предоставляет выбранный столбец. Я не могу найти способ отменить выбор, кроме выбора другой ячейки. См. Раздел [Delphi XE4 stringgrid selectcell в FireMonkey] (http://stackoverflow.com/q/17808168/576719) –

ответ

3

Чтобы получить выбранную строку, используйте Selected. Чтобы получить выбранный столбец, используйте ColumnIndex. Индексы строк и столбцов начинаются с 0,

Для отмены выбора вы можете установить Selected и ColumnIndex на f. ех. -1.

Испытано с этим кодом:

procedure TForm29.Button1Click(Sender: TObject); 
var 
    SelRow, SelCol: integer; 
begin 
    SelRow := StringGrid1.Selected; 
    SelCol := StringGrid1.ColumnIndex; 
    Memo1.Lines.Add(Format('SelRow: %d, SelCol: %d',[SelRow, SelCol])); 
    StringGrid1.Selected := -1; 
    StringGrid1.ColumnIndex := -1; 
    SelRow := StringGrid1.Selected; 
    SelCol := StringGrid1.ColumnIndex; 
    Memo1.Lines.Add(Format('SelRow: %d, SelCol: %d',[SelRow, SelCol])); 
end;