Форум: "Основная";
Текущий архив: 2013.03.22;
Скачать: [xml.tar.bz2];
ВнизDBGridEh. Как программно скопировать в буфер обмена? Найти похожие ветки
← →
noob_one (2011-01-19 09:59) [0]Клавишами это делается Ctrl+A, Ctrl+C.
Выделение всего нашел DBG.Selection.SelectAll;
Не могу найти как скопировать (
← →
Slym © (2011-01-19 10:39) [1]procedure TForm1.EditCopy1Execute(Sender: TObject);
var Safe,s:string;
i,j:integer;
begin
with DBGrid1 do
begin
if SelectedRows.Count>0 then
begin
s:="";
DataSource.DataSet.DisableControls;
try
Safe:=DataSource.DataSet.Bookmark;
for i:=0 to SelectedRows.Count-1 do
begin
DataSource.DataSet.Bookmark:=SelectedRows.Items[i];
for j:=0 to DataSource.DataSet.FieldCount-1 do
begin
s:=s+DataSource.DataSet.Fields[j].AsString;
if j<DataSource.DataSet.FieldCount-1 then
s:=s+#9;
end;
s:=s+#13#10;
end;
DataSource.DataSet.Bookmark:=Safe;
finally
DataSource.DataSet.EnableControls;
end;
if s<>"" then
begin
Clipboard.Open;
try
Clipboard.AsText:=s;
finally
Clipboard.Close;
end;
end;
end;
end;
end;
← →
noob_one (2011-01-19 11:10) [2]Большое спасибо.
Дело в том что у DBGridEh копируются заголовки с форматированием, к тому же dataset у меня много полей которых нет в гриде.
Я нашел модуль DBGridEhImpExp а в нем процедуру DBGridEh_DoCopyAction. Работает медленно, но красиво.
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2013.03.22;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.06 c