Page 1 sur 2

[Résolu] [2D] MessageRequester() ne s'affiche pas

Publié : dim. 14/févr./2016 10:27
par falsam
[Window10 Pro] [PB 5.40 x86]

MessageRequester() ne fonctionne pas quand on met fin à une boucle evenementielle. Surprenant.

Code : Tout sélectionner

InitSprite() : InitKeyboard() : InitMouse()

OpenWindow(0, 0, 0, 800, 600, "Test", #PB_Window_SystemMenu|#PB_Window_ScreenCentered)
OpenWindowedScreen(WindowID(0), 0, 0, 800, 600)

Repeat 
  Repeat 
    Event = WindowEvent()
    
    Select Event    
      Case #PB_Event_CloseWindow
        End
    EndSelect  
  Until Event=0
  
  FlipBuffers()
  ClearScreen(RGB(101, 159, 62))
  ExamineKeyboard()  
Until KeyboardPushed(#PB_Key_Escape)

MessageRequester("Information", "Le message que vous ne verrez pas")
Ce n'est pas très grave car il y a moyen de faire autrement.

Re: [2D] MessageRequester() ne s'affiche

Publié : dim. 14/févr./2016 11:32
par falsam
Merci beaucoup Spock mais ça reste quand même étrange comme comportement.

Re: [Résolu] [2D] MessageRequester() ne s'affiche

Publié : dim. 14/févr./2016 13:06
par Ar-S
Tu peux aussi utiliser un

Code : Tout sélectionner

Event = WaitWindowEvent(10) 
On peut aussi mettre l'examinekeyboard() dans la boucle graphique ou comme l'a dit spock dans la boucle event.

P.S : Par contre j'ai toujours trouvé plus logique de mettre le clearscreen au début du code et le flip la fin.

Code : Tout sélectionner

Repeat
  ExamineKeyboard()
  ClearScreen(RGB(101, 159, 62))
  
  
  Repeat
    
    Event = WindowEvent()
    
    Select Event   
      Case #PB_Event_CloseWindow
        quite = 1
    EndSelect 
  Until Event=0
 
  FlipBuffers()
  
Until KeyboardPushed(#PB_Key_Escape) Or quite = 1


Re: [Résolu] [2D] MessageRequester() ne s'affiche

Publié : dim. 14/févr./2016 13:30
par Ar-S
Ma ménagère est un peu maniaque, elle est pas sûre que la pièce est propre pour les futurs invités alors elle passe toujours un petit coup de propre avant la teuf :)

Re: [Résolu] [2D] MessageRequester() ne s'affiche

Publié : dim. 14/févr./2016 14:03
par venom
Ar-S a écrit :Ma ménagère est un peu maniaque, elle est pas sûre que la pièce est propre pour les futurs invités alors elle passe toujours un petit coup de propre avant la teuf :)
Comme beaucoup de ménagère. :wink: Un coup avant et un coup après






@++

Re: [Résolu] [2D] MessageRequester() ne s'affiche

Publié : dim. 14/févr./2016 16:33
par Shadow
Salut,

Code : Tout sélectionner

InitSprite() : InitKeyboard() : InitMouse()

OpenWindow(0, 0, 0, 800, 600, "Test", #PB_Window_SystemMenu|#PB_Window_ScreenCentered)
OpenWindowedScreen(WindowID(0), 0, 0, 800, 600)

Repeat
  Repeat
    Event = WindowEvent()
   
    Select Event   
      Case #PB_Event_CloseWindow
     ---> END <---
    EndSelect 
  Until Event=0
 
  FlipBuffers()
  ClearScreen(RGB(101, 159, 62))
  ExamineKeyboard() 
Until KeyboardPushed(#PB_Key_Escape)

MessageRequester("Information", "Le message que vous ne verrez pas")
C'étais pourtant si simple !

Par contre c'est bizarre en effet que ça prenne aussi si ont appuie sur échap
car normalement c la fin de boucle et ça devrais quitter !

Voilà, là ça marche:

Code : Tout sélectionner

InitSprite() : InitKeyboard() : InitMouse()

OpenWindow(0, 0, 0, 800, 600, "Test", #PB_Window_SystemMenu|#PB_Window_ScreenCentered)
OpenWindowedScreen(WindowID(0), 0, 0, 800, 600)

Repeat
  Repeat
 ---> ExamineKeyboard() <---
    Event = WindowEvent()
   
    Select Event   
      Case #PB_Event_CloseWindow
        End
    EndSelect 
  Until Event=0
 
  FlipBuffers()
  ClearScreen(RGB(101, 159, 62))
  
Until KeyboardPushed(#PB_Key_Escape)

MessageRequester("Information", "Le message que vous verrez !")

Re: [Résolu] [2D] MessageRequester() ne s'affiche

Publié : dim. 14/févr./2016 16:38
par falsam
Shadow a écrit :C'étais pourtant si simple !
Et pas fonctionnel.

MessageRequester() ne fonctionne pas dans ton code.

Re: [Résolu] [2D] MessageRequester() ne s'affiche pas

Publié : dim. 14/févr./2016 16:40
par Shadow
J'ai pas modifiés, j'ai juste montré dans le 1 !
Le 2 fonctionne !

Re: [Résolu] [2D] MessageRequester() ne s'affiche pas

Publié : dim. 14/févr./2016 16:43
par falsam
Shadow a écrit :J'ai pas modifiés, j'ai juste montré dans le 1 !
Le 2 fonctionne !
Quand on quitte avec Escape ou par fermeture de la fenetre la fonction MessageRequester() ne fonctionne pas dans ton code.

Par contre le code de Spock fonctionne correctement.

Re: [Résolu] [2D] MessageRequester() ne s'affiche pas

Publié : dim. 14/févr./2016 16:46
par Shadow
Le code 2 fonctionne !
Sauf pour le fermeture de la fenêtre avec la crois exacte.

Re: [Résolu] [2D] MessageRequester() ne s'affiche pas

Publié : dim. 14/févr./2016 16:48
par Shadow
Ceci fonctionne !

Code : Tout sélectionner

InitSprite() : InitKeyboard() : InitMouse()

OpenWindow(0, 0, 0, 800, 600, "Test", #PB_Window_SystemMenu|#PB_Window_ScreenCentered)
OpenWindowedScreen(WindowID(0), 0, 0, 800, 600)

Repeat
  Repeat
    ExamineKeyboard() 
    Event = WindowEvent()
   
    Select Event   
      Case #PB_Event_CloseWindow
        Break 2
    EndSelect 
  Until Event=0
 
  FlipBuffers()
  ClearScreen(RGB(101, 159, 62))
  
Until KeyboardPushed(#PB_Key_Escape)

MessageRequester("Information", "Le message que vous verrez !")

Re: [Résolu] [2D] MessageRequester() ne s'affiche pas

Publié : dim. 14/févr./2016 16:50
par falsam
Shadow a écrit :Ceci fonctionne !
Pas tout à fait. Essaye de fermer la fenetre avec la croix.

je t'assure que le code de Spock est fonctionnel :wink:

Re: [Résolu] [2D] MessageRequester() ne s'affiche pas

Publié : dim. 14/févr./2016 16:57
par Shadow
Écoute moi que je ferme la fenêtre ou que je fasse échap, le message apparais !

Re: [Résolu] [2D] MessageRequester() ne s'affiche pas

Publié : dim. 14/févr./2016 18:18
par Ar-S
Quelle version de pb ?...

Re: [Résolu] [2D] MessageRequester() ne s'affiche pas

Publié : dim. 14/févr./2016 20:01
par Shadow
5.41 TLS x64
Essayé en x86