Показать диалог печати и распечатать текстовый файл
unit Unit1;
interfaceuses{...,}ComCtrls;
type
TForm1 = class(TForm)
Button1: TButton;
PrintDialog1: TPrintDialog;
RichEdit1: TRichEdit;
procedure Button1Click(Sender: TObject);
{...}end;
var
Form1: TForm1;
implementation{$R *.DFM}procedure TForm1.Button1Click(Sender: TObject);
beginif PrintDialog1.Execute then
Richedit1.Print('Ltp1'); {Ltp1, Lpt2 are printers}end;
end.
Here is the translation of the dialog into Russian:
unit Unit1;
interface
uses ..., ComCtrls;
type
TForm1 = class(TForm)
Button1: TButton;
PrintDialog1: TPrintDialog;
RichEdit1: TRichEdit;
procedure Button1Click(Sender: TObject);
// ...
end;
var
Form1: TForm1;
implementation
{$R *.DFM}
procedure TForm1.Button1Click(Sender: TObject);
begin
if PrintDialog1.Execute then
RichEdit1.Print; // печатает содержимое RichEdit-контрола на выбранном принтере
// или
// если вы хотите напечатать текстовый файл
AssignFile(file, 'путь_к_вашему_текстовому_файлу.txt'); // замените на ваш путь и имя файла
Reset(file);
try
While Not Eof(file) do
WriteLn(RichEdit1.Lines.Add(ReadLn(file)));
finally
CloseFile(file);
end;
end;
end.
В этом коде, когда кнопка Button1 нажата, она открывает диалог печати, чтобы позволить пользователю выбрать принтер. Если пользователь кликнет OK в диалоге печати, она напечатает содержимое RichEdit-контрола.
Если вы хотите напечатать текстовый файл вместо напечатания содержимого RichEdit-контрола, можно использовать следующий код:
AssignFile(file, 'путь_к_вашему_текстовому_файлу.txt'); // замените на ваш путь и имя файла
Reset(file);
try
While Not Eof(file) do
WriteLn(RichEdit1.Lines.Add(ReadLn(file)));
finally
CloseFile(file);
end;
Этот код читает текстовый файл построчно, добавляет каждую строку в RichEdit-контроль и затем напечатает содержимое RichEdit-контроля.
В статье описывается создание формы Delphi с кнопкой печати, которая использует диалог печати для вывода текстового файла в RichEdit на выбранном принтере.
Комментарии и вопросы
Получайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Telegram-канал delphi_kansoftware и будьте в курсе последних тенденций в разработке под Linux, Windows, Android и iOS