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

Вниз

Drag&Drop в DBGrid   Найти похожие ветки 

 
Max Zyuzin ©   (2002-12-15 10:14) [0]

Приветствую, всех!

В общем занялся я тут одной вещью.. а именно решил сделать возможность в программе перетаскивать методом D&D записи из одного грида в другой... начитался хелпов :)
Стал делать, но сталкнулся с проблеммой -
Если у грида поставить свойство (DragMode??) dmAutomatic то перетаскивание идет нормально, только вот фиг выберешь что нить в самом гриде... как только нажимаешь левую кнопку мыши, сразу курсор стает перетаскиваемым и запись не позиционируется...
Побороть это можно поставив dmManual и повесив в обработчик события onMouseDown у грида... но вот проблемма в том, что событие срабатывает только если кликать в Тайтл в обычные стоки - фиг :((
Побороть удалось только воспользовавшись DBGridEh - в ней все работает замечательно.... А в стандартной это можно сделать???

И еще вопрос при притаскивании на новый грид чего то из старого, в событии возвращается только координаты (X,Y) компонента куда мы что то притащили... вопрос - как по умному можно достучаться до записи, на которую притащили что то из другого грида???
В смысле как по координатом спозиционироваться на записи соответствующей.


 
MBo ©   (2002-12-15 10:29) [1]

для правой кнопки описано в http://delphi.mastak.ru/articles/dragndrop/index.html

Для левой так:

(dmManual)

procedure TForm1.DBGrid1MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer);
begin
if DragDetect(Dbgrid1.handle,point(x,y))
then
DBGrid1.BeginDrag(true);
end;

Для определения, куда принесли - может пригодиться
http://delphi.mastak.ru/cgi-bin/forum.pl?look=1&id=1039520901&n=0
Но, думаю, есть и лучшие решения - я в БД не спец


 
Max Zyuzin ©   (2002-12-15 10:44) [2]

>MBo © (15.12.02 10:29)
Спасибо... В общих чертах понятно. Т.е. предлагается позиционироваться автоматичекски проcто при движении курсора по DBGrid??


 
MBo ©   (2002-12-15 10:47) [3]

В общем да. Не знаю, подойдет ли тебе - там определялось содержимое ячейки под курсором, а удастся ли так добавить в данную ячейку, я не пробовал



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

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

Наверх




Память: 0.47 MB
Время: 0.018 c
14-15269
4D man
2002-12-16 19:13
2003.01.06
Калькуляторы


3-14965
VID
2002-12-15 13:32
2003.01.06
FIBDataSet не записывает блоб-поля в файл...


14-15211
Дмитрий К.К.
2002-12-04 14:28
2003.01.06
Где можно скачать список ВСЕХ тэгов HTML?


4-15365
Stainer
2002-11-19 16:36
2003.01.06
Клик по popup menu


14-15291
Sergo
2002-12-18 08:18
2003.01.06
Электромагнитная картина мира