Главная страница
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.019 c
6-15192
Devid
2002-11-06 22:10
2003.01.06
Дорогие мастера помогите реализовать проект


14-15222
DeMoN-777
2002-12-13 04:59
2003.01.06
Помогите найти, я уже замучался


7-15341
TRW
2002-10-26 13:26
2003.01.06
Новое соединение


4-15373
Deathless
2002-11-15 11:12
2003.01.06
Помогите с CreateProcessWithLogonW...


3-14931
atmamont
2002-12-12 00:47
2003.01.06
Посоветуйте что использовать для отчетов