Fonction pour imprimer une feuille à partir de delphi [Résolu]

Messages postés
56
Date d'inscription
lundi 27 septembre 2010
Statut
Membre
Dernière intervention
30 octobre 2011
- - Dernière réponse : solilog
Messages postés
273
Date d'inscription
samedi 13 juin 2009
Statut
Membre
Dernière intervention
18 avril 2015
- 13 juil. 2009 à 17:39
Salut à tous
Savez vous quel code je dois utiliser pour imprimer une page à partir de delphi?
Je fais une gestion d'une compétition de natation et à un moment donné j'ai une fiche qui s'affiche avec tout les renseignements sur cette compétition que se trouvent dans ma BD, j'aimerai permettre à l'utilisateur d'imprimer cette feuille si il le souhaite....Mais comment?
autre chose : est il possible de transférer ses renseignements sur un doc Office Word?

Merci à qui voudra bien me répondre
Afficher la suite 

5 réponses

Meilleure réponse
Messages postés
4996
Date d'inscription
dimanche 26 février 2006
Statut
Modérateur
Dernière intervention
27 mars 2018
8
3
Merci
bonjour,

Le mieux serait de réaliser un état avec les outils classiques à ta disposition selon la version de delphi

Sinon, tu peux toujours imprimer une copie d'écran..

cantador

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 131 internautes nous ont dit merci ce mois-ci

Commenter la réponse de cs_cantador
Messages postés
4996
Date d'inscription
dimanche 26 février 2006
Statut
Modérateur
Dernière intervention
27 mars 2018
8
3
Merci
pour les outils :
rave ou QuickReportn etc..

pour la copie d'écran :

UNIT Unit1;


INTERFACE


USES
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, Menus;


TYPE
  TForm1 = CLASS(TForm)
    Button1: TButton;
    PROCEDURE Button1Click(Sender: TObject);
  PRIVATE
    { Déclarations privées }
  PUBLIC
    { Déclarations publiques }
  END;


VAR
  Form1: TForm1;


IMPLEMENTATION




{$R *.dfm}


PROCEDURE CaptureEcran(activeWindow: bool; Img: TBitmap);
VAR
  w, h: integer;
  DC: HDC;
  hWin: Cardinal;
  r: TRect;
BEGIN
  IF activeWindow THEN
  BEGIN
    hWin := GetForegroundWindow;
    dc := GetWindowDC(hWin);
    GetWindowRect(hWin, r);
    w := r.Right - r.Left;
    h := r.Bottom - r.Top;
  END
  ELSE
  BEGIN
    hWin := GetDesktopWindow;
    dc := GetDC(hWin);
    w := GetDeviceCaps(DC, HORZRES);
    h := GetDeviceCaps(DC, VERTRES);
  END;
  TRY
    Img.Width := w;
    Img.Height := h;
    BitBlt(Img.Canvas.Handle, 0, 0, Img.Width, Img.Height, DC, 0, 0, SRCCOPY);
  FINALLY
    ReleaseDC(hWin, DC);
  END;
END;


PROCEDURE TForm1.Button1Click(Sender: TObject);
VAR
  BitMap: TBitMap;
BEGIN
  BitMap := TBitMap.Create;
  CaptureEcran(true, BitMap);
  BitMap.SaveToFile('CopieForme.bmp');
  BitMap.Free;
END;


END.

voir aussi le code publié par cirec sur le forum

cantador

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 131 internautes nous ont dit merci ce mois-ci

Commenter la réponse de cs_cantador
Messages postés
56
Date d'inscription
lundi 27 septembre 2010
Statut
Membre
Dernière intervention
30 octobre 2011
0
Merci
Merci Cantador....mais pourrais tu, STP, être un tout petit peu plus explicite....Merci
Commenter la réponse de Badyinfo
Messages postés
56
Date d'inscription
lundi 27 septembre 2010
Statut
Membre
Dernière intervention
30 octobre 2011
0
Merci
Ok, merci bcp , ça m'aide énormément 
Commenter la réponse de Badyinfo
Messages postés
273
Date d'inscription
samedi 13 juin 2009
Statut
Membre
Dernière intervention
18 avril 2015
8
0
Merci
Bjr,
Si tu veux juste printer l'image d'une form, essaye form1.print tout simplement, tu auras à l'imprimante l'image exacte de ta form avec tous ses contrôles.
Salut
solilog
Commenter la réponse de solilog