Page 1 sur 1

Imprimer le contenu d'un Editor ou d'une suite de strings

Publié : mar. 06/avr./2004 10:54
par Jacobus
Salut à tous je débute en PB et je viens de m'inscrire à l'instant pile juste très exactement environ il ya trois minutes :)

Voilà mon blème:
J'ai essayé de mettre en place une procédure pour imprimer le contenu d'un editor directement depuis la fenêtre où le texte est tapé. En vain.
J'ai essayé de comprendre avec les 4 exemples trouvés dans l'aide et Code archive, mais je blaire un max. les procédures proposées reprenant des fonctions qui n'existent même pas dans PB (j'ai la version 3.81 que j'ai acheté) ou alors je ne sais pas ou chercher.

Même chose pour une suite de strings (pratiques ces cases à remplir) mais là aussi le blaireau a frappé. J'ai parcouru le Forum pour tenter de trouver un exemple qui fonctionne mais nada, que fifre.

Alors si quelqu'un a le temps de me montrer un exemple qui fonctionne je serais :D et je lui dirais un grand merci.

Jacobus

Publié : jeu. 08/avr./2004 7:12
par brossden
Bojour

Je n'ai pas eu le temps de mettre des commentaires mais je pense que la simplicité de ce bout de code ne présentera pas de difficulté à être compris !


Code : Tout sélectionner


Global FontID1, rc.s

FontID1 = LoadFont(1, "Comic Sans MS", 12) 
rc=Chr(13)+Chr(10)

Procedure Open_Window_0()
  If OpenWindow(0, 477, 78, 283, 242,  #PB_Window_SystemMenu | #PB_Window_SizeGadget | #PB_Window_TitleBar , "New window ( 0 )")
    If CreateGadgetList(WindowID())
      EditorGadget(1, 20, 5, 240, 170)
      SetGadgetFont(1, FontID1)
      ButtonGadget(2, 80, 200, 120, 30, "Impression")
      SetGadgetFont(2, FontID1)
    EndIf
  EndIf
EndProcedure


Open_Window_0()
SetGadgetItemText(1,1,"Ceci est un test d'impression"+rc+"depuis un EditorGadget",0)
Repeat
  Event = WaitWindowEvent()
  If Event = #PB_EventGadget
    GadgetID = EventGadgetID()
    If GadgetID = 1
    ElseIf GadgetID = 2
      If PrintRequester()
        If StartPrinting("PureBasic Test")
          If StartDrawing(PrinterOutput())
            DrawingFont(LoadFont(2, "Comic Sans MS", 30) ) 
            For n=1 To CountGadgetItems(1)
              Locate(100, 100 * n ) : DrawText(GetGadgetItemText(1,n-1,0))
              Debug  GetGadgetItemText(1,n-1,0)
            Next
            StopDrawing()
          EndIf
          StopPrinting()
        EndIf
      EndIf      
    EndIf
  EndIf
Until Event = #PB_EventCloseWindow
End


[/code]

Un grand merci à BROSSDEN

Publié : jeu. 08/avr./2004 17:46
par Jacobus
:D C'est parfait pour ce que je fais ! Ca marche au poil !
Très content de pouvoir imprimer le contenu de mes fenêtres EDITOR
De plus la possibilité de choisir la police d'impression, différente de celle du gadget est une option très très pratique.

C'est vrai qu'un débutant comme moi a tendance à s'émerveiller d'un rien, mais quand on a la joie de pouvoir créer une application qui fonctionne tiptop... c'est quand même le pieds.

Donc merci encore ... je pense que je reviendrai;

Chalut ! #yes