Jsou zobrazeny jen nové odpovědi. Zobrazit všechny
Předmět Autor Datum
V Delphi máš predsa v palete nástrojov (Tool Palette) kartu Dialogs a tam štandardné dialogové okná.…
pme 07.05.2017 20:20
pme
Dík za odpověď, ale asi jsem svůj problém nepopsal dostatečně jasně. Doporučeným postupem vyvolám st…
JiSok 07.05.2017 21:16
JiSok
Vyskúšaj toto: var FDevice: PChar; FDriver: PChar; FPort: PChar; DeviceMode: THandle; DevMode: PDev… nový
pme 07.05.2017 21:42
pme
Tak to je volačo iného, to vizerá vierohodne. Ale řídím se úslovím "ráno moudřejší večera" a protože… poslední
JiSok 07.05.2017 21:58
JiSok

V Delphi máš predsa v palete nástrojov (Tool Palette) kartu Dialogs a tam štandardné dialogové okná. Mimo iných aj TPrintDialog a TPrinterSetupDialog...

Stačí zavolať príslušnú metódu dialogu: Execute --> if not PrinterSetupDialog1.Execute then Exit;

Dík za odpověď, ale asi jsem svůj problém nepopsal dostatečně jasně. Doporučeným postupem vyvolám standardní dialog, na který musím reagovat ručně a právě tomu se chci vyhnout. Měl jsem na mysli je-li znám postup běžný při nastavování orientace papíru na výšku či na šířku, tedy Printer.Orientation:=poPortrait na výšku.

Vyskúšaj toto:

var 
    FDevice: PChar;
    FDriver: PChar;
    FPort: PChar;
    DeviceMode: THandle;
    DevMode: PDeviceMode;
begin
  Printer.GetPrinter(FDevice, FDriver, FPort, DeviceMode);
  DevMode := GlobalLock(DeviceMode);

  DevMode^.dmFields := DevMode^.dmFields or DM_PRINTQUALITY;

  case pQuality of
      Low: DevMode^.dmPrintQuality := DMRES_LOW;
      Med: DevMode^.dmPrintQuality := DMRES_MEDIUM;
      High: DevMode^.dmPrintQuality := DMRES_HIGH;
  else
      DevMode^.dmPrintQuality := DMRES_DRAFT;
  end;

  Printer.SetPrinter(FDevice, FDriver, FPort, DeviceMode);
  GlobalUnlock(DeviceMode);
end;

Zpět do poradny Odpovědět na původní otázku Nahoru