Dmitriy.Himichev wrote:здравствуйте ещё раз) У меня версия старая - 1.44 )) А хочется, чтобы можно было копировать содержимое любой ячейки, будь то адрес, или телефон, и т.д. Поможет ли мне что-нибудь при такой ситуации?
Во-первых, скачайте бесплатную бету 1.46
https://www.dropbox.com/s/30ysr48sd8ca4 … 6.zip?dl=0
Затем сделайте следующее:
Поместите на форму компонент TEdit.
В событие формы OnShow вставьте такой код:
procedure Form1_OnShow (Sender: string; Action: string);
begin
Form1.Edit1.Visible:= False; //делаем компонент невидимым для пользователя
end;
Затем в событие OnClick таблицы напишите следующее:
procedure Form1_TableGrid1_OnCellClick (Sender: string; ACol, ARow: Integer);
var
sCol, sRow:integer;
CellText:String;
begin
sCol:= Form1.TableGrid1.SelectedColumn; //выбранная колонка
sRow:= Form1.TableGrid1.SelectedRow; //выбранная строка
CellText:= Form1.TableGrid1.Cells(sCol,sRow); //текст выбранной ячейки
Form1.Edit1.Text:= CellText; //присваиваем компоненту TEdit текст выделенной ячейки
Form1.Edit1.SelectAll; //выбираем все
Form1.Edit1.CopyToClipboard; //копируем в буфер
end;
Но при таком подходе любой клик по любой ячейке будет приводить к копированию в буфер. Поэтому я бы сделал отдельную кнопку и "повесил" данный код на событие OnClick кнопки, чтобы не грузить лишний раз буфер обмена.