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

Вниз

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

 
BFG9k ©   (2005-08-01 17:49) [0]

Небходимо перетаскивать компонент (в моем случае это тоже форма)с помощью мыши по форме.

Сделал так, чтобы компонент перетаскивался мышью за всю клиентскую часть.

Но при этом мне нужно, чтобы содержимое компонента отображалось при его перетаскивании (а не только рамка). А также сделать ограничения при перетаскивании (например чтобы левый край компонента не заходил за левый край формы и т.д.).

Как бы мне этого добиться, желательно без мерцания ?

Спасибо.


 
Mx ©   (2005-08-01 18:12) [1]

Я рисовал на экране, то бишь через API с GetDC(0)


 
Mx ©   (2005-08-01 18:16) [2]

Да, забыл, чтобы ограничить диапазон движения курсора используй ClipCursor, а чтобы компонент не рисовался за краями, то для DC, полученного через GetDC(0), надо использовать IntersectClipRect.


 
BFG9k ©   (2005-08-03 14:09) [3]


> Я рисовал на экране, то бишь через API с GetDC(0)


Сложновато. На самом деле должен быть способ намного проще (в виндовсе можно настроить, чтобы содержимое всех окон отображалось при перетаскивании).
Например что-то в этом роде:

  B:=True;
  SystemParametersInfo(SPI_SETDRAGFULLWINDOWS, 0, @B,  SPIF_SENDCHANGE)

Только у меня не работает почему-то :(


 
BFG9k ©   (2005-08-03 16:49) [4]

Вот так надо.


SystemParametersInfo(SPI_SETDRAGFULLWINDOWS, 1, nil,  SPIF_SENDCHANGE)


Только происходят изменения во всей системе. Как бы применить это только для конкретного окна ?


 
Mx ©   (2005-08-03 18:44) [5]


> BFG9k ©   (03.08.05 16:49) [4]

Ой, я тебя совсем неправильно понял!



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

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

Наверх




Память: 0.48 MB
Время: 0.026 c
1-1121769809
xwag
2005-07-19 14:43
2005.08.21
Отлов ошибок нехватки памяти и дискового пространства


4-1119339646
ANB
2005-06-21 11:40
2005.08.21
Что передать в качестве окна для SetForegroundWindow ?


4-1120045400
SPeller
2005-06-29 15:43
2005.08.21
Заставить IE перечитать настройки


4-1120122127
Никита
2005-06-30 13:02
2005.08.21
Как получить список всех дисков?


4-1119809266
andrew_john
2005-06-26 22:07
2005.08.21
Уменьшение задержки