- Код: Выделить всё
procedure TForm1.Button1Click(Sender: TObject);
begin
Label1.Caption:='Print on Printer';
if PD.Execute then
begin
Label1.Font:=FontDialog1.Font;
Printer.Create;
Printer.BeginDoc;
Printer.Canvas.Font:=FontDialog1.Font;
Printer.Canvas.TextOut(50, 200,'Print on Printer');
Printer.EndDoc;
Printer.Free;
end;
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
FontDialog1.Execute
end;
На форме две кнопки Button1 и Button2 и Label1
Кнопкой Button2 выбираю шрифт
Кнопкой Button1 вывожу на печать предварительно показав PrintDialog(сдесь PD).
Момент такой если первый раз вывожу на печать все ок
Второй раз нажимаю Button1 вываливается ошибка
вываливается имено на PD.Execute
List index 5117076 out of bonds
Ошибка выскакивает стабильно во второй раз
пробовал все три диалога
PrinterSetupDialog
PrinterDialog
PageSetupDialog