ATOUTFOX
COMMUNAUTÉ FRANCOPHONE DES PROFESSIONNELS FOXPRO
Visual FoxPro : le développement durable

Ouvrir et visualiser PDF dans VisualFox   



L'auteur

Jissé
France France
Membre Simple
# 0000000565
enregistré le 23/08/2005

http://www.cdei.eu
66 ans
GORGONE Jean-claude
de la société CDEI
Fiche personnelle


Note des membres
pas de note

Contributions > 09 - Automation

Ouvrir et visualiser PDF dans VisualFox
# 0000000503
ajouté le 05/01/2008 11:25:12 et modifié le 05/01/2008
consulté 10537 fois
Niveau débutant

Version(s) Foxpro :
VFP 9.0
VFP 8.0

Zoomer sur l'image
Description
Visualiser un Pdf dans une fenetre Foxpro
Pourquoi ne pas passer par le WebExplorer
Sur des sources modifiés trouvées sur le Net
Se révèle tres pratique a l'usage.
Code source :
PUBLIC oform1

oForm1=NEWOBJECT("form1")
oForm1.Show()
RETURN

DEFINE CLASS form1 AS form

  Autocenter = .T.
  Height = 520
  Width = 741
  Caption = "Visualisation de PDF"
  ShowWindow = 2
  Name = "Form1"
  cPdfFileName = "=SPACE(0)"

  ADD OBJECT txtpdfname AS textbox WITH ;
    Top = 471, Left = 108, Height = 23, Width = 492, anchor = 14, ;
    ReadOnly = .T.Name = "txtPdfName"

  ADD OBJECT command1 AS commandbutton WITH ;
    Top = 469, Left = 623, Height = 27, Width = 84,anchor = 12, ;
    Caption = "PDF ..."Name = "Command1"

  ADD OBJECT owb AS olecontrol WITH ;
    Top = 24, Left = 12, Height = 433, Width = 709, Anchor = 15, ;
    OleClass = "Shell.Explorer.2"Name = "oWB"

  ADD OBJECT label1 AS label WITH ;
    Height = 17, Left = 36, Top = 474, Width = 63, anchor= 6,;
    Caption = "Nom PDF :"Name = "Label1"

  PROCEDURE Refresh
    && Requis pour VFP8 et permet de contourner une erreur
    NODEFAULT
  ENDPROC

  PROCEDURE ShowPdf
    && Affichage de page blanche dans le WebControl
    Thisform.oWB.OBJECT.Navigate2("About:Blank")
    && Attendre que le chargement soit complet
    lnSeconds = SECONDS()
    DO WHILE Thisform.oWB.OBJECT.Busy AND SECONDS() - lnSeconds < 60
      DOEVENTS
    ENDDO

    && Charger PDF
    Thisform.oWB.OBJECT.Navigate2(Thisform.cPdfFileName)
    && Attendre que le chargement soit complet
    lnSeconds = SECONDS()
    DO WHILE Thisform.oWB.OBJECT.Busy AND SECONDS() - lnSeconds < 60
      DOEVENTS
    ENDDO
  ENDPROC

  PROCEDURE command1.Click
    && Ouvrir PDF
    Thisform.cPdfFileName = GETFILE("pdf")
    && Afficher le nom du PDF
    Thisform.txtPdfName.Value = Thisform.cPdfFileName
    IF NOT EMPTY(Thisform.cPdfFileName)
      && Afficher PDF
      Thisform.ShowPdf()
    ENDIF
  ENDPROC

ENDDEFINE
Commentaires
le 17/02/2008, bd a écrit :
Peut-on à l'inverse, enregistrer un report sous forme de pdf, dans un répertoire fixé en paramètres
Merci

le 23/02/2008, Alain Blanchard a écrit :
On peut faire plus court
getfile("pdf")
clic de droite sur le fichier puis ouvrir


Publicité

Les pubs en cours :

www.atoutfox.org - Site de la Communauté Francophone des Professionnels FoxPro - v3.4.0 - © 2004-2024.
Cette page est générée par un composant COM+ développé en Visual FoxPro 9.0-SP2-HF3