WindowOutput() qu'est-ce exactement?

Vous débutez et vous avez besoin d'aide ? N'hésitez pas à poser vos questions
Avatar de l’utilisateur
cederavic
Messages : 1338
Inscription : lun. 09/févr./2004 23:38
Localisation : Bordeaux

WindowOutput() qu'est-ce exactement?

Message par cederavic »

tout est dan le titre... aparement c'est pas le dc car StartDrawing(GetWindowDC_(hwnd)) ne prend pa, je ne voit pa du tout ce que c'est... si quelqu'un sait, merci beaucoup :)
Patrick88
Messages : 1564
Inscription : mer. 21/janv./2004 18:24

Message par Patrick88 »

c'est la fenetre qui contient les gadgets

regarde l'exemple 2DDrawing.pb

If OpenWindow(0, 100, 200, 300, 200, #PB_Window_SystemMenu, "2D Drawing Test")

.....
;
; Some 2D graphics functions...
;

SomeGraphics:
StartDrawing(WindowOutput())

Circle(100,100,50,RGB(0,0,255)) ; a nice blue circle...

.....

patrick
Avatar de l’utilisateur
cederavic
Messages : 1338
Inscription : lun. 09/févr./2004 23:38
Localisation : Bordeaux

Message par cederavic »

oui je sais lol, mais qu'est-ce qu'elle renvoi?
Avatar de l’utilisateur
Chris
Messages : 3731
Inscription : sam. 24/janv./2004 14:54
Contact :

Message par Chris »

A priori, c'est pas le DC, parce qu'il est renvoyé par la fonction StartDrawing()

J'ai trouvé ça dans l'aide de StartDrawing(): (pour la 3.90)
The 'Result' value is the DC (Device Context) handle which can be requiered by some WindowsAPI functions.
Chris :)
Avatar de l’utilisateur
cederavic
Messages : 1338
Inscription : lun. 09/févr./2004 23:38
Localisation : Bordeaux

Message par cederavic »

oui j'ai vu aussi, mais alors c'est quoi ce windowoutput()??? :?
filperj
Messages : 395
Inscription : jeu. 22/janv./2004 1:13

Message par filperj »

Juste une idée comme ça, mais c'est peut-être le pointeur vers une structure "DrawingInfoStruct" (voir dans \purebasic\library SDK\PureBasic library descriptor.txt").
Si c'est ça, ça doit être un truc interne à PB, taillé sur mesure pour StartDrawing().
Le chaos l'emporte toujours sur l'ordre
parcequ'il est mieux organisé.
(Ly Tin Wheedle)
Guimauve
Messages : 1015
Inscription : mer. 11/févr./2004 0:32
Localisation : Québec, Canada

Message par Guimauve »

WindowOutput() : Les dessins seront rendus directement sur la fenetre.

À mon avis ça indique à la fonction StartDrawing() où elle doit travailler pour faire son dessin. À savoir le fond de la fenètre encours identifié par le OutputID renvoyé par la commande WindowOutput().

Code : Tout sélectionner

;/--------------------------------------------------------------------------------
;/ Dégradé de couleur dans une fenêtre
;/--------------------------------------------------------------------------------

Procedure Gradient( Color1.l, Color2.l, NbColor.l )

 ww = WindowWidth()
 wh = WindowHeight()

 rt = Red  (Color1) : rd = Red  (Color2) - rt
 gt = Green(Color1) : gd = Green(Color2) - gt
 bt = Blue (Color1) : bd = Blue (Color2) - bt

 StartDrawing( WindowOutput() )

   While i < NbColor
       r = MulDiv_(   i, rd, NbColor ) + rt
       g = MulDiv_(   i, gd, NbColor ) + gt
       b = MulDiv_(   i, bd, NbColor ) + bt
       y = MulDiv_(   i, wh, Nbcolor )
       h = MulDiv_( i+2, wh, NbColor )
       Box( 0, y, ww, h, RGB(r,g,b) ) : i+1
   Wend
 StopDrawing()
EndProcedure

;---------------------------------------------------------------------------------

flags = #PB_Window_SystemMenu | #PB_Window_SizeGadget | #PB_Window_ScreenCentered

If OpenWindow( 0, 0, 0, 320, 320, flags, "Dégradé" )

 If CreateGadgetList(WindowID())

   ButtonGadget( 0, 0, 0, 0, 0, "" )

   Repeat

     Select WaitWindowEvent()

       Case #PB_Event_CloseWindow : quit = 1

       Case #PB_Event_Gadget : quit = 1

       Case #WM_SIZE

        ;----------------------

         ResizeGadget( 0, (WindowWidth()-80)/2, WindowHeight()-40, 80, 35 )

         SetGadgetText( 0, Str(WindowWidth())+"x"+Str(WindowHeight()) )

         Gradient( $000000, $FF4F4F, 255)

        ;----------------------
     EndSelect
   Until quit = 1
 EndIf
EndIf
;---------------------------------------------------------------------------------
End 
A+
Guimauve
Avatar de l’utilisateur
cederavic
Messages : 1338
Inscription : lun. 09/févr./2004 23:38
Localisation : Bordeaux

Message par cederavic »

oui guimauve, je le sais ;)
Merci fliperj, c'est exactement ça :D merci beaucoup
Répondre