Imprimer un webgadget avec ou sans prévisualisation

Codes specifiques à Windows
Avatar de l’utilisateur
falsam
Messages : 7244
Inscription : dim. 22/août/2010 15:24
Localisation : IDF (Yvelines)
Contact :

Imprimer un webgadget avec ou sans prévisualisation

Message par falsam »

Imprimer avec ou sans prévisualisation le contenu d'un Webgadget.

Code : Tout sélectionner

; Print WebGadget
; OS : Window

EnableExplicit

Enumeration
  #MainForm
  #Webgadget
  #Preview
  #Print
EndEnumeration

#PWB_PROMPTUSER  = 1   
#PWB_NOPROMPTUSER = 2
#PWB_PRINT = 6
#PWB_PREVIEW = 7

Procedure PrintWebGadget (WebgadgetID, Arg1, Arg2)
  Protected WebObject.IWebBrowser2 = GetWindowLong_(GadgetID(WebgadgetID), #GWL_USERDATA)
  WebObject\ExecWB(Arg1, Arg2, 0, 0)
EndProcedure

OpenWindow(#MainForm, 0,0,800, 600, "Print Webgadget", #PB_Window_ScreenCentered | #PB_Window_SystemMenu)
WebGadget(#Webgadget, 5, 5, 790, 500, "www.purebasic.fr")
ButtonGadget(#Preview, 5, 550, 80, 30, "Preview")
ButtonGadget(#Print, 90, 550, 80, 30, "Print")

Repeat
  Select WaitWindowEvent(50)
    Case #PB_Event_Gadget
      Select EventGadget()
        Case #Preview
          PrintWebGadget(#Webgadget, #PWB_PREVIEW, #PWB_PROMPTUSER)
          
        Case #Print
          PrintWebGadget(#Webgadget, #PWB_PRINT, #PWB_NOPROMPTUSER)
      EndSelect
            
    Case #PB_Event_CloseWindow
      End
      
  EndSelect
ForEver
Configuration : Windows 11 Famille 64-bit - PB 6.03 x64 - AMD Ryzen 7 - 16 GO RAM
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%