Imprimer un memo

Résolu
ced55957 Messages postés 108 Date d'inscription dimanche 2 mars 2003 Statut Membre Dernière intervention 19 juin 2012 - 21 févr. 2005 à 13:07
ni69 Messages postés 1418 Date d'inscription samedi 12 juin 2004 Statut Membre Dernière intervention 5 juillet 2010 - 22 févr. 2005 à 22:35
cedric
bonjour
comment fait on pour imprimer un memo??
merci d'avance

3 réponses

ni69 Messages postés 1418 Date d'inscription samedi 12 juin 2004 Statut Membre Dernière intervention 5 juillet 2010 12
21 févr. 2005 à 13:16
Comme ceci :

Uses Printers;


procedure TForm1.Button1Click(Sender: TObject);
var
i: Integer;
begin
with Printer do
begin
BeginDoc;
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;
EndDoc;
end;
end;


@+
Bonne Prog'
Nico



<HR>
N'oubliez pas de cliquer sur Réponse acceptée lorsque la réponse vous convient !
1
cs_Delphiprog Messages postés 4297 Date d'inscription samedi 19 janvier 2002 Statut Membre Dernière intervention 9 janvier 2013 32
21 févr. 2005 à 22:26
Méthode "express" issu du bon vieux temps du Turbo Pascal :
1- ajouter Printers dans la clause Uses de votre choix

2- créer une procédure ou une méthode (c'est vous qui voyez) :
procedure TForm1.PrintMemo(Memo: TCustomMemo);
var
  P: TextFile;
  i: integer;
begin
  AssignPrn(P);
  try
    Rewrite(P);
    for i := 0 to Memo.Lines.Count - 1 do
      WriteLn(P, Memo.Lines[i]);
  finally
    CloseFile(P);
  end;
end;

3- Imprimez n'importe quel TMemo simplement :
procedure TForm1.Button1Click(Sender: TObject);
begin
  PrintMemo(Memo1);
end;

Avec cette méthode, on n'a pas à se préoccuper des hauteurs des lignes en fonction de la taille des caractères ni de savoir si on déborde de la feuille car le saut de page se fait automatiquement.

A toi de choisir

Pensez à cliquer sur Réponse acceptée lorsque la réponse vous convient.
http://www.croix-rouge.fr/index/partner_campagne.html
0
ni69 Messages postés 1418 Date d'inscription samedi 12 juin 2004 Statut Membre Dernière intervention 5 juillet 2010 12
22 févr. 2005 à 22:35
Effectivement DelphiProg, j'avais déjà vu cette façon de faire quelque-part mais je ne m'en souvenais plus exactement... Merci de nous en faire part, je le note au cas où !

ced55957 >> Réponse acceptée pour DelphiProg svp


@+
Bonne Prog'
Nico



<HR>
N'oubliez pas de cliquer sur Réponse acceptée lorsque la réponse vous convient !
0
Rejoignez-nous