скрыть

скрыть

  Форум  

Delphi FAQ - Часто задаваемые вопросы

| Базы данных | Графика и Игры | Интернет и Сети | Компоненты и Классы | Мультимедиа |
| ОС и Железо | Программа и Интерфейс | Рабочий стол | Синтаксис | Технологии | Файловая система |



Google  
 

Вывести диалог свойств принтера



Оформил: DeeCo

{ 
  If you need to create your own printer dialog, you can use the PrinterProperties 
  API function to bring up a printer's properties dialog. 
}

 uses
   WinSpool, Printers;

 procedure TForm1.Button1Click(Sender: TObject);
 const
   { 
   The TPrinterDefaults structure specifies the default data type, 
   environment, initialization data, and access rights for a printer. 
  }
   Defaults: TPrinterDefaults = (pDatatype: nil;
     pDevMode: nil;
     DesiredAccess: STANDARD_RIGHTS_REQUIRED or PRINTER_ACCESS_USE);
 var
   hPrinter: THandle;
   Device: array[0..255] of char;
   Driver: array[0..255] of char;
   Port: array[0..255] of char;
   hDeviceMode: THandle;
   RetVal: Boolean;
 begin
   Printer.PrinterIndex := Combobox1.ItemIndex;
   { Retrieve information about the specified printer }
   Printer.GetPrinter(Device,
     Driver,
     Port,
     hDeviceMode);
   { Retrieve a handle identifying the specified printer or print }
   if not OpenPrinter(@Device, hPrinter, @Defaults) then
     RaiseLastWin32Error;
   try
     { Display a printer-properties property sheet for the specified printer }
     PrinterProperties(Handle, hPrinter);
   finally
     { Close the specified printer object }
     ClosePrinter(hPrinter);
   end;
 end;

 procedure TForm1.FormCreate(Sender: TObject);
 begin
   { Show available printers in a Combobox }
   Combobox1.Items := Printer.Printers;
   Combobox1.ItemIndex := 0;
 end;





Copyright © 2004-2016 "Delphi Sources". Delphi World FAQ




Группа ВКонтакте   Ссылка на Twitter   Группа на Facebook