Текущий архив: 2004.07.25;
Скачать: CL | DM;
Вниз
Drag&Drop Найти похожие ветки
← →
ALEIIIKA (2004-07-14 08:56) [0]Столкнулся со следующей проблемой: есть две формы, на каждой расположено по TImage, в которых нарисована таблица, обе формы одного приложения и обе видимы.
Проблема заключается в следующем: нужно поменять информацию в ячейках, следующим способом: нужную ячейку в одной форме выбрать нажав левую кнопку мыши и тащить на другую форму и в нужном месте отпустить.
В процессе программирования следующее:
нажатие и перетаскивание программируется легко, а вот вторая форма не обрабатывает перемещение над ней мыши (так как не активна) до момента пока не станет активна (то есть пока над ней не отпущу кнопку).
Пробовал использоватьDragDropиDragOver, но т.к. перемещение ячеек может быть не только между формами, но и на одной из форм, реализация этого не получается.
Какими еще вариантами можно реализовать сие действие! Всем спасибо.
← →
MBo © (2004-07-14 09:12) [1]Не вижу проблем - чудесно работает перетаскивание с Label1 первой формы и Label2 второй формы на Label1 второй:
procedure TForm2.Label1DragOver(Sender, Source: TObject; X, Y: Integer;
State: TDragState; var Accept: Boolean);
begin
Accept:=Source is TLabel;
end;
procedure TForm2.Label1DragDrop(Sender, Source: TObject; X, Y: Integer);
begin
Caption:=IntToStr(GetTickCount)+TControl(Source).Name;
end;
← →
ALEIIIKA (2004-07-14 12:05) [2]Так работает я знаю, но мне надо то чтобы не только с формы на форму, а примерно вот так (Образная запись):
c Form1.image1(X, Y) на Form2.image1(X1, Y1)
Form2.image1(X, Y) -> Form1.image1(X1, Y1)
Form1.image1(X, Y) -> Form1.image1(X1, Y1)
Form2.image1(X, Y) -> Form2.image1(X1, Y1)
Достаточно такого алгоритма работы
OnMouseDown ( Form1.image1(X, Y) ) // здесь легко даеются X и Y
OnMouseUp ( Form2.image1(X1, Y1) ) // а вот здесь их не получить.
← →
MBo © (2004-07-14 12:32) [3]OnDragDrop/Over все это решает. Непонятно, в чем заморочки.
← →
IXT (2004-07-14 12:39) [4]А я не понял, причем тут TImage и таблица?
← →
ALEIIIKA (2004-07-14 13:27) [5]Таблица рисуется в Image (StringGrid - не подходит НИ КАК)
← →
ALEIIIKA (2004-07-14 13:57) [6]Все разобрался на второй форме рисовалось все на форме а не на Image, поэтому Drag&Drop не работал. Всем спасибо.
Страницы: 1 вся ветка
Текущий архив: 2004.07.25;
Скачать: CL | DM;
Память: 0.47 MB
Время: 0.029 c