Поделиться через


Перетаскивание изображений из списка изображений

CImageList включает функции по перетаскиванию изображение на экране. При перетаскивании функции по изображение, плавно цветом и без каких-либо проблескивать курсора. И замаскированные и демаскированные изображения можно перетаскивать.

Функцию-член BeginDrag начинается операция перетаскивания. В число этих параметров входят индекс изображения для перетаскивания и расположение точки отображаются внутри образа. Активной один пиксель, при перетаскивании функции поддерживают как точное местоположение на экране образа. Как правило, приложение задает активной, чтобы оно совпадет с гиперобъектом курсора мыши. Функцию-член DragMove перемещает изображение в новое расположение.

Функцию-член DragEnter задает первоначальную позицию образа перетаскивания в окне и рисует изображение в позиции. В число этих параметров входят указатель в окно, в котором рисования изображение и точка, которая определяет координаты первоначальной позиции в окне. Координаты относительно верхнего левого угла окна, не клиентской области. То же самое верно для всех образ- при перетаскивании функций, которые принимают координаты в качестве параметров. Это означает, что необходимо компенсировать ширины элемента окна, как граница, заголовок окна и строка меню, указав координаты. Если указан дескриптор окна NULL при вызове DragEnter, при перетаскивании функции котором демонстрируется рисование изображение в контексте устройства, связанном с полем рабочего стола и координаты относительно верхнего левого угла экрана.

DragEnter блокирует все остальные обновления к определенному окну во время операции перетаскивания. Если необходимо сделать любое рисование во время операции перетаскивания, например выделение целевой объект операции перетаскивания, можно временно скрывать перетащенный изображение с помощью функции-члена DragLeave. Можно также использовать функцию-член DragShowNoLock.

Вызовите EndDrag по завершении при перетаскивании изображение.

Функцию-член SetDragCursorImage создает новый образ перетаскивания путем объединения заданных образ (обычно образ курсора мыши) с текущим образом перетаскивания. Поскольку при перетаскивании функции используют новый образ во время операции перетаскивания, следует использовать функцию ShowCursor Windows скрывать фактический курсор мыши после вызова SetDragCursorImage. В противном случае система может выполняться из 2 курсора мыши длительности операции перетаскивания.

Когда приложение вызывает BeginDrag, система создает временные, внутренние список изображений и копирования указанный изображение перетаскивания на внутренний список. Можно получить указатель на временный список изображений перетаскивать с помощью функции-члена GetDragImage. Функция также возвращает текущая позиция перетаскивания и перетаскивать образа смещение относительно позиции перетаскивания.

См. также

Ссылки

Использование CImageList

Основные понятия

Элементы управления (MFC)