Ok, ale nie cały :
unit Unit1;
{$mode objfpc}{$H+}
interface
uses
Classes, SysUtils, FileUtil, LResources, Forms, Controls, Graphics, Dialogs,
Menus, PrintersDlgs, StdCtrls, ComCtrls, ExtCtrls, ColorBox, Spin, Buttons, Printers, INIFiles,
ExtDlgs, IniPropStorage, Registry, ShellApi, Windows;
//tutaj wersja z drukowaniem
procedure TForm1.Button7Click(Sender: TObject);
var
r: TRect;
i: Integer;
begin
with Printer do
begin
r := Rect(200,200,(Pagewidth - 200),(PageHeight - 200));
BeginDoc;
Canvas.Brush.Style := bsClear;
for i := 0 to Memo1.Lines.Count do
Canvas.TextOut(200,200 + (i *
Canvas.TextHeight(Memo1.Lines.Strings[i])),
Memo1.Lines.Strings[i]);
Canvas.Brush.Color := clBlack;
Canvas.FrameRect(r);
EndDoc;
end;
end;
//tutaj zapytanie messagebox
procedure TForm1.FormClose(Sender: TObject; var CloseAction: TCloseAction);
begin
if Memo1.Modified then
case Application.MessageBox('W dokumecie zaszły zmiany. Czy chcesz je zapisac?','Uwaga', MB_YESNOCANCEL) of
IDNO: exit;
IDYES: MenuItem69Click(Sender);
end;
end;
To jest wersja z dzialajacym messagebox