|
|
---|
    Объект TPrinter представляет инкапсуляцию системы драйвера принтера Windows. Чтобы напечатать на принтере или настроить его конфигурацию, инициализируйте экземпляр TPrinter.
    Указывает на имя текущего устройства. В случае значения nil
объект не связан в данный момент с устройством.
    Функциональная переменная, содержащая адрес функции
DeviceMode текущего связанного принтера. Данная переменная
используется при вызове Configure, если устройство не поддерживает
ExtDeviceMode.
    Описатель текущего драйвера принтера.
    Указатель на локальную копию установленных параметров
устройства печати (называемую также операционным окружением).
Используется только если текущее устройство печати поддерживает
ExtDeviceMode.
    Объем памяти, выделенной для DeviceSetings.
    Указатель на имя текущего драйвера. В случае значения nil
объект не связан в данный момент с драйвером.
    Код ошибки, возвращаемый GDI при печати. Это значение
инициализируется при вызове Print.
    Функциональная переменная, содержащая адрес функции
ExtDeviceMode текущего устройства печати. Если драйвер не
поддерживает данную подпрограмму, специфичную для Windows 3.0, то
данный адрес равен nil (то есть @ExtDeviceMode = nil равно True).
Эта переменная используется при вызове Configure.
    Указатель на имя порта, к которому подсоединен текущий
принтер. В случае значения nil объект не содержит принтера.
    Текущее состояние драйвера принтера.
    Ниже описываются методы, определенные в данном объекте.
    Создает экземпляр TPrinter, связанный с используемым по
умолчанию принтером. Чтобы сменить принтер, TPrinter после
инициализации объекта вызывает SetDevice. Вызов Setup также позволяет
пользователю выбрать новое устройство в ходе диалога.
    Освобождает ресурсы, выделенные для TPrinter.
    Отменяет связь устройства с текущим принтером. Вызывается
SetDevice и Done. Изменяет текущее состояние принтера на
pf_Unassociated, что приводит к игнорированию объектом всех
вызовов Print, пока объект не будет снова связан с принтером.
    Вызывает драйвер устройства для конфигурации текущего
принтера. Если драйвер принтера поддерживает ExtDeviceMode, то
сохраняется локальная копия параметров принтера, и значения принтера
по умолчанию не изменяются. Если принтер поддерживает только
DeviceMode, глобальные значения по умолчанию для принтера будут
модифицированы.
    Возвращает для текущего связанного с объектом принтера
контекст устройства. Если объект находится в недопустимом состоянии,
или принтер связан с неактивным портом (то есть с портом "None"),
возвращает 0.
    Вызывается методом Print в начале печати задания.
Возвращаемым результатом является созданный безрежимный диалоговый блок.
По умолчанию возвращается экземпляр TPrinterAbortDlg. Отмена
этого диалогового блока отменяет задание печати.
    Может переопределяться для возврата специализированного
диалога, выводящего на экран текущую печать.
    Вызывается методом Print для возврата диалогового блока,
если объект распечатки указывает, что поддерживается печать
выбранных страниц. Диалоговый блок печати позволяет пользователю задать
печать всех страниц, выделенного текста или диапазона страниц.
По умолчанию InitPrintDialog возвращает экземпляр типа
TPrintDialog.
    Вызывается методом Setup для возврата диалогового блока
установки принтера. В приложении результат предполагается в виде
режимного диалогового окна. По умолчанию возвращается экземпляр
TPrinterSetupDlg. Может переопределяться для возврата
специализированного диалога установки принтера.
    Переводит указанный объект распечатки на связанное
устройство печати. При печати выводит на экран диалоговое окно
прерывания и обнаруженные ошибки.
    Print вызывает ReportError в случае обнаружения ошибки. По
умолчанию выводится блок системного сообщения со строкой ошибки,
полученной из значений таблицы строк 32512 - 32519. Чтобы вывести
специализированный диалоговый блок ошибки, данный метод можно
переопределить.
Поля
Device: PChar;
DeviceMode: TDeviceMode;
DeviceModule: THandle;
DeviceSettings: PDevMode;
DeviceSettingSize: Integer;
Driver: PChar;
Error: Integer;
ExtDeviceMode: TExtDeviceMode;
Port: PChar;
Status: Integer;
Методы
Init
constructor Init;
Done (переопределяется редко)
desctuctor Done; virtual;
ClearDevice
procedure ClearDevice;
Configure
procedure Confuigure(Window: PWindowsObject);
GetDC (переопределяется редко)
function GetDC: HDC; virtual;
InitAbortDialog (переопределяется редко)
function InitAbortDialog(Parent: PWindowsObject;
Title: PChar): PDialog; virtual;
InitPrintDialog (переопределяется редко)
function InitPrintDialog(Parent: PWindowsObject; PrnDC: HDC;
Pages: Integer; SetAllowed: Boolean; var Data;
TPrintDialogRec): PDialog; virtual;
InitSetupDialog (переопределяется редко)
function InitSetupDialog(Parent: PWindowsObject): PDialog;
virtual;
Print
function Print(ParentWin: PWindowsObject;
PrintOut: PPrintOut): Boolean;
ReportError (иногда переопределяется)
procedure ReportError(PrintOut: PPrintOut); virtual;