Pdf en un formulario

159 views
Skip to first unread message

dar...@gmail.com

unread,
Oct 11, 2022, 9:36:54 AM10/11/22
to Comunidad de Visual Foxpro en Español
Buenos dias, he probado distintos metodos y no logro lo que deseo, es decir abrir un pdf dentro de un formulario y que no pregunte si deseo abrirlo, lo ultimo probe esto

*-----------------------------------------------
* Crear una variable publica y ponerle la ruta fisica del archivo
* PUBLIC lcFileName
* lcFileName = "c:\coa\Informe de nomrei.pdf"
*------------------------------------------------

Public oFormPDF

oFormPDF=Newobject("ShowPDF")
oFormPDF.Show()
Return

Define Class ShowPDF As Form

    AutoCenter = .T.
    Height = 475
    Width = 730
    *icon = "c:\coa\graphics\PDF.ico"
    *Caption = 'Vista preliminar - '+LOWER(ALLTRIM(lcFileName))
    ShowWindow = 2
    Name = "ShowPDF"
    ShowWindow = 1
    WindowState = 2
    AlwaysOnTop = .T.
    cPdfFileName = SPACE(10)

    Add Object owb As OleControl With ;
        Top = 0, Left = 0, Height = Thisform.Height, Width = Thisform.Width, Anchor = 15, ;
        OleClass = "Shell.Explorer.2", Name = "oWB"

    Procedure Init
    Public lcFileName
    lcFileName="c:\stock\CONTROLDESTOCK.pdf"
    Thisform.ShowPDF()
    Endproc

    Procedure Refresh
    Nodefault
    Endproc

    Procedure ShowPDF
&& Inicializamos con una pagina en blanco
    Thisform.owb.Object.Navigate2("About:Blank")
    lnSeconds = Seconds()
    Do While Thisform.owb.Object.Busy And Seconds() - lnSeconds < 60
        DoEvents
    Enddo

&& Lanzamos el PDF, donde lcFileName es una variable publica previamente validada en relacion a la existencia del ARCHIVO PDF.
    Thisform.owb.Object.Navigate2(lcFileName)
    lnSeconds = Seconds()
    Do While Thisform.owb.Object.Busy And Seconds() - lnSeconds < 60
        DoEvents
    Enddo
    Endproc
Enddefine

pero me lo abre con el lector pre definido como lector en windows y no dentro del form, ideas?, gracias

dar...@gmail.com

unread,
Oct 11, 2022, 9:47:25 AM10/11/22
to Comunidad de Visual Foxpro en Español
solucionado, con una pequeña aplicacion gratis llamada SUMATRA, fabulosa...

roberto martinez andrade

unread,
Oct 11, 2022, 9:52:21 AM10/11/22
to publice...@googlegroups.com
Acabo de probar una ocx de oracle que me dio justamente lo que necesito y no es difícil de implementar, si quieres te envío info al respecto de lo que tengo y que me funciona bastante bien.

Sl2s
Roberto 
Coyhaique - Chile

--
Blog de la Comunidad Visual FoxPro en Español: http://comunidadvfp.blogspot.com
---
Has recibido este mensaje porque estás suscrito al grupo "Comunidad de Visual Foxpro en Español" de Grupos de Google.
Para cancelar la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a publicesvfoxp...@googlegroups.com.
Para ver esta conversación en el sitio web, visita https://groups.google.com/d/msgid/publicesvfoxpro/e6110998-7435-43b4-9a31-0dcb246af9c7n%40googlegroups.com.

Jean Pierre Adonis De La Cruz Garcia

unread,
Oct 11, 2022, 12:54:57 PM10/11/22
to Comunidad de Visual Foxpro en Español
La mejor forma en tu formulario es usar un objeto ActiveX Control, el que se va a usar el Shell.Explorer2, ahi te envio imagen como se usa en el formulario y cual seia su resultado
img01.jpg

img02.jpg

Por si acaso debes dejar por defecto el Adober PDF Reader, y configurarlo para que pueda mostrarle la ventana y no se oculte, y con eso listo, ya puedes mostrar cualqueir pdf en tu formulario sin librerias externas.
Saludos

dar...@gmail.com

unread,
Oct 11, 2022, 1:14:22 PM10/11/22
to Comunidad de Visual Foxpro en Español
gracias mil por sus ideas pero estoy probando el sumatra y me gusta...

mhlezama

unread,
Oct 17, 2022, 4:41:01 PM10/17/22
to Comunidad de Visual Foxpro en Español
Puedes enviar como se realiza en la app Sumatra?
Reply all
Reply to author
Forward
0 new messages