Метод IPrintOemDriverUni::D rvYMoveTo (prcomoem.h)
Метод IPrintOemDriverUni::DrvYMoveTo
предоставляется драйвером Unidrv, чтобы подключаемый модуль отрисовки может уведомлять драйвер об изменениях положения курсора по оси Y.
Синтаксис
HRESULT DrvYMoveTo(
PDEVOBJ pdevobj,
INT y,
DWORD dwFlags,
[out] OUT INT *piResult
);
Параметры
pdevobj
Предоставленный вызывающим объектом указатель на структуру DEVOBJ .
y
Указанное вызывающим абонентом значение, представляющее количество единиц, которые должны быть перемещены курсором. Единица измерения определяется флагами MV_GRAPHICS в dwFlags.
dwFlags
Один или несколько из следующих битовых флагов, предоставленных вызывающим абонентом:
Флаг | Определение |
---|---|
MV_GRAPHICS |
Если значение задано, значение параметра y выражается точками в зависимости от текущего разрешения принтера. Например, если разрешение y равно 150 точек на дюйм, а y — 75, то перемещение равно ?? Дюймовый.
Если значение не задано, значение параметра y выражается в master единицах. Например, если единица master y — 600, а y — 300, то движение равно ?? Дюймовый. |
MV_PHYSICAL |
Если задано значение, значение параметра y определяется относительно источника курсора.
Если значение не задано, значение параметра y определяется относительно источника печатаемой области. Не удается задать, если задано MV_RELATIVE. |
MV_RELATIVE |
Если задано значение , указывает, что курсор должен быть перемещен из текущего положения в единицах y .
Если значение не задано, указывает, что курсор должен быть перемещен в единицах y из его источника. |
MV_UPDATE |
Если задано, указывает, что Unidrv должен обновить текущее вычисление позиции курсора без фактического перемещения курсора. (Должно быть задано, если IPrintOemUni::ImageProcessing переместил курсор.) Если значение не задано, указывает, что Unidrv должен обновить текущее вычисление позиции курсора, а также переместить курсор. |
[out] piResult
Получает предоставленный методом результат вычитания фактической новой позиции курсора из запрошенной новой позиции курсора. Это значение может быть равно нулю, но оно всегда не является отрицательным.
Возвращаемое значение
Метод должен возвращать одно из следующих значений.
Код возврата | Описание |
---|---|
|
Операция успешно выполнена. |
|
Операция не удалась. |
|
Метод не реализован. |
Комментарии
Методы IPrintOemDriverUni::D rvXMoveTo позволяют IPrintOemDriverUni::DrvYMoveTo
подключаемом модулю отрисовки отправлять данные изображений в очередь печати принтера, не приводя к тому, что драйвер принтера потеряет положение курсора принтера. Если вы предоставляете метод IPrintOemUni::ImageProcessing , который отправляет данные изображения непосредственно в очередь печати, а не возвращает их в драйвер принтера, метод должен вызвать IPrintOemDriverUni::DrvXMoveTo
и IPrintOemDriverUni::DrvYMoveTo
.
Для обновления положения курсора можно использовать один из двух методов:
-
Всякий раз, когда методУ IPrintOemUni::ImageProcessing требуется обновить позицию курсора, он может вызывать
IPrintOemDriverUni::DrvXMoveTo
илиIPrintOemDriverUni::DrvYMoveTo
с снятым флагом MV_UPDATE. Это приводит к тому, что Unidrv отправляет команды курсора в очередь печати и обновляет внутреннее вычисление текущей позиции курсора. -
Метод IPrintOemUni::ImageProcessing может обновлять курсор, отправляя команды курсора непосредственно в очередь печати. После завершения операции spooling метод может вызвать
IPrintOemDriverUni::DrvXMoveTo
илиIPrintOemDriverUni::DrvYMoveTo
с установленным флагом MV_UPDATE. Это приводит к тому, что Unidrv обновляет внутреннее вычисление текущей позиции курсора без отправки команд курсора в очередь печати.
Требования
Требование | Значение |
---|---|
Целевая платформа | Персональный компьютер |
Верхняя часть | prcomoem.h (включая Prcomoem.h) |