Вниз
Скачать: CL | DM;

Перетаскиваемый компонент   Найти похожие ветки 

← →
avr555 ©   (2001-12-17 19:54) [0]

У меня такой вопрос:
Я хочу сделать компонент, который можно было бы "таскать" по форме.
В качестве такого компонента решил использовать VirtualTreeView
Для перетаскивания использую три события: OnMouseDown, OnMouseMove, OnMouseUp.

Когда я в качестве перетаскиваемого компонента использовал CheckListBox, то для того, чтобы компонент не срывался, вызывал функцию SetCapture(self.Handle) и все работало.
А при переходе на VirtualTreeView после вызова SetCapture(self.Handle) компонент перестает передвигаться. Если не вызывать SetCapture(self.Handle), то все работает, только компонент при перетаскивании "срывается" с указателя.

Что делать?


← →
DK ©   (2001-12-19 02:16) [1]

Попробуй в обработчик OnMouseDown вставить:
var
Control: TControl;
begin
try
Control := Sender as TControl;
ReleaseCapture;
Control.Perform(WM_SYSCOMMAND, $F012, 0);
finally
end;

end;



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.01 c
1-22047
handra
2001-12-17 13:12
2002.01.08
Создание справки


1-22156
vlv
2001-12-15 21:05
2002.01.08
HTMLHelp


1-22249
Eugene Zelikovsky
2001-12-17 13:53
2002.01.08
Как обождать какое-то время не используя TTimer


1-22204
Dmitriy(new)
2001-12-13 19:37
2002.01.08
код не создает более `273 files in win2000


14-22376
Новенький
2001-11-07 01:11
2002.01.08
помогите кто-чем сможет




   Наверх