Bugs Examinemouse() avec Windowopenscreen sur un GadgetID

Archive.
Avatar de l’utilisateur
Thyphoon
Messages : 2697
Inscription : mer. 25/août/2004 6:31
Localisation : Eragny
Contact :

Bugs Examinemouse() avec Windowopenscreen sur un GadgetID

Message par Thyphoon »

Je ne sais pas si c'est vraiment un bug ou pas... je m'explique.
J'ai trouvé sur le forum anglais une astuce pour redimensionner un screen dans une fenêtre sans avoir a tout recharger les sprites.

IL s'agit d'ouvrir le screen dans un ContainerGadget plutôt que directement dans la fenêtre. Ainsi on redimensionne le Gadget en même temps que la fenêtre. ça marche super sauf qu'apparement la commande ExamineMouse() ne fonctionne plus correctement.

Dans la notice il est marqué d'utilisé un WindowID alors je ne sais pas si l'utilisation d'un GadgetID est finalement une erreur ou pas ...

Code avec l'utilisation de GadgetID (la souris ne fonctionne pas)

Code : Tout sélectionner

#Main=0

#Main_ScreenContainer=1
InitSprite()
InitMouse()
InitKeyboard()
OpenWindow(#Main,0,0,800,480,"PureArcade Skin Editor",#PB_Window_ScreenCentered|#PB_Window_SystemMenu|#PB_Window_SizeGadget)
CreateGadgetList(WindowID(#Main))
ContainerGadget(#Main_ScreenContainer,20,20,WindowWidth(#Main)-50,WindowHeight(#Main)-50)
OpenWindowedScreen(GadgetID(#Main_ScreenContainer),0,0,800,480,0,0,0)
;WindowID(#Main)
CloseGadgetList()


Repeat
  ClearScreen(0)
  StartDrawing(ScreenOutput())
  ExamineMouse()
  ExamineKeyboard()
  Line(MouseX(),MouseY(),30,0,#White)
  Line(MouseX(),MouseY(),0,30,#White)
 
  StopDrawing()
  FlipBuffers()
Until KeyboardPushed(#PB_Key_Escape)

Code avec l'utilisation de WindowID (la souris fonctionne)

Code : Tout sélectionner

#Main=0

#Main_ScreenContainer=1
InitSprite()
InitMouse()
InitKeyboard()
OpenWindow(#Main,0,0,800,480,"PureArcade Skin Editor",#PB_Window_ScreenCentered|#PB_Window_SystemMenu|#PB_Window_SizeGadget)
CreateGadgetList(WindowID(#Main))
ContainerGadget(#Main_ScreenContainer,20,20,WindowWidth(#Main)-50,WindowHeight(#Main)-50)
OpenWindowedScreen(WindowID(#Main),0,0,800,480,0,0,0)
;GadgetID(#Main_ScreenContainer)
CloseGadgetList()


Repeat
  ClearScreen(0)
  StartDrawing(ScreenOutput())
  ExamineMouse()
  ExamineKeyboard()
  Line(MouseX(),MouseY(),30,0,#White)
  Line(MouseX(),MouseY(),0,30,#White)
 
  StopDrawing()
  FlipBuffers()
Until KeyboardPushed(#PB_Key_Escape)
Avatar de l’utilisateur
Thyphoon
Messages : 2697
Inscription : mer. 25/août/2004 6:31
Localisation : Eragny
Contact :

Message par Thyphoon »

Bon et bien ou ma question est stupide...ou bien personne n'a d'idée :(
Avatar de l’utilisateur
Ar-S
Messages : 9478
Inscription : dim. 09/oct./2005 16:51
Contact :

Message par Ar-S »

Image moi j'ai pas d'idée Image
Avatar de l’utilisateur
Thyphoon
Messages : 2697
Inscription : mer. 25/août/2004 6:31
Localisation : Eragny
Contact :

Message par Thyphoon »

Ar-S a écrit :Image moi j'ai pas d'idée Image
Merci d'avoir jeté un oeil en tout cas :P
Niffo
Messages : 108
Inscription : dim. 29/août/2004 15:51

Message par Niffo »

Mais pourquoi ne pas ouvrir le "WindowedScreen" sur la fenêtre ?
Avatar de l’utilisateur
Thyphoon
Messages : 2697
Inscription : mer. 25/août/2004 6:31
Localisation : Eragny
Contact :

Message par Thyphoon »

Tout simplement pour pouvoir redimensionner la fenêtre sans avoir a tout recharger les sprites a chaque redimensionnement ! :P
tu comprends ?
Répondre