Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.07.16;
Скачать: CL | DM;

Вниз

Копирование групп ячеек столбца в буфер обмена   Найти похожие ветки 

 
krobs ©   (2006-05-14 18:37) [0]

Скачал из Инета библиотеку EhLib и заменил DBGrid1 на DBGridEh1 - появилось больше возможностей - классно!
Выставил свойство: Options.dgMultiSelect
А вот как теперь сделать копирование групп ячеек столбца, в буфер обмена данными (как в Excel), что бы при этом я мог эти данные копировать обратно в Грид?
Товарищи, плиз, подскажите!!!!!!!!

Проще говоря мне нужно повторяемые в базе группы записей (в столбцах), дабы не переписывать их - копировать!

Заранее благодарю за ответ!


 
alexeis ©   (2006-05-15 08:31) [1]

тама есть demos. посмотри в нем.
вообще все работает через bookmarks.
Навскидку:
var     BStart,BEnd : TBookmarkStr;
....
     BEnd := dbgDisProv.Selection.Rect.BottomRow;
     dm.TableSource.GotoBookmark(Tbookmark(BStart));
     while True do
     begin
       dm.TableDest.Edit;
       dm.TableDest.FieldByName("field1").AsFloat := dm.TableSource.FieldByName("field1").AsFloat
       end;
       dm.TableDest.Post;
       BStart:=PChar(dm.TableSource.GetBookmark);
       if TIBCustomDataSet(dm.TableSource).CompareBookmarks(Pointer(BEnd),Pointer(BStart))  = 0 then
         break;
       dm.dsDisProv.Next;
     end;


 
alexeis ©   (2006-05-15 08:48) [2]

Блин, выдрал со своей проги. Небольшое изменение:
тама есть demos. посмотри в нем.
вообще все работает через bookmarks.
Навскидку:
var     BStart,BEnd : TBookmarkStr;
....
    BStart := dbgDisProv.Selection.Rect.TopRow;
    BEnd := dbgDisProv.Selection.Rect.BottomRow;
    dm.TableSource.GotoBookmark(Tbookmark(BStart));
    while True do
    begin
      dm.TableDest.Edit;
      dm.TableDest.FieldByName("field1").AsFloat := dm.TableSource.FieldByName("field1").AsFloat
      end;
      dm.TableDest.Post;
      BStart:=PChar(dm.TableSource.GetBookmark);
      if TDataSet(dm.TableSource).CompareBookmarks(Pointer(BEnd),Pointer(BStart))  = 0 then
        break;
      dm.TableSource.Next;
    end;

Вобщем, разберешься :-)


 
krobs ©   (2006-05-15 22:45) [3]


> тама есть demos. посмотри в нем.


Спасибо за ответ, но можно,пожалуйста уточнить что за demos. и где он находиться?


 
unknown ©   (2006-05-15 23:04) [4]

Все гораздо проще -
uses DBGridEhImpExp;
...
{ Второй параметр true - копировать всю таблицу, false - выделенное }
DBGridEh_DoCopyAction(DBGridEh1,True);
...


 
alexeis ©   (2006-05-16 07:47) [5]

demos находится в каталоге {твой путь куда ты установил ehLib}\Demos


 
MsGuns ©   (2006-05-16 09:09) [6]

>Проще говоря мне нужно повторяемые в базе группы записей (в столбцах), дабы не переписывать их - копировать!

Проще говоря, для таких целей база не нужна - вполне сгодится Excel



Страницы: 1 вся ветка

Текущий архив: 2006.07.16;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.027 c
1-1149233928
boalse
2006-06-02 11:38
2006.07.16
Передача параметров asm, Delphi.


2-1151329549
novill
2006-06-26 17:45
2006.07.16
Текущий каталог для сервиса(службы)?


2-1151321316
XTD
2006-06-26 15:28
2006.07.16
Как изменить основное устройство воспроизведения звука?


15-1150695570
Ega23
2006-06-19 09:39
2006.07.16
С Днём рождения! 18 июня


2-1151047899
fun.exe
2006-06-23 11:31
2006.07.16
Колдовство с Opera