Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2004.07.25;
Скачать: [xml.tar.bz2];

Вниз

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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.038 c
3-1088611609
GanibalLector
2004-06-30 20:06
2004.07.25
СЕРВЕР упал?


14-1089057114
DeadMeat
2004-07-05 23:51
2004.07.25
Расписание


1-1089643766
bobj
2004-07-12 18:49
2004.07.25
Обработка OnKeyDown и передача фокуса ввода


3-1088619879
Zlod3y
2004-06-30 22:24
2004.07.25
Окно ввода логина и пароля при подключении к алиасу в ODBC


4-1086848119
(AD)acid
2004-06-10 10:15
2004.07.25
Получение имени устройства в win2k/xp (например CD-ROMa)





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский