PureBasic

Forums PureBasic
Nous sommes le Jeu 20/Juin/2013 10:44

Heures au format UTC + 1 heure




Poster un nouveau sujet Répondre au sujet  [ 5 messages ] 
Auteur Message
 Sujet du message: bug Windowedscreen
MessagePosté: Mer 04/Avr/2012 18:27 
Hors ligne
Avatar de l’utilisateur

Inscription: Lun 26/Avr/2004 0:40
Messages: 13086
j'ai essaye d'expliquer le probleme sur le Forum anglais
mais l’écueil de Babel , m’empêche de me faire comprendre ( ils trouvent ça normal le fonctionnement de ce code :roll: )


dans ce code , j'essaie dans la procedure "test_ecran()" de tester si on peut ouvrir un ecran
si on peut pas , c'est qu'il a deja ete ouvert , et ça devrai renvoyer #True

seulement problème , apparemment ça ne gene pas Purebasic d'ouvrir un ecran pourtant deja ouvert
donc le test de la procedure renvoi toujours #False !! 8O


Code:

Enumeration
   #win
EndEnumeration
Declare.b test_ecran()


InitSprite()
debug  str(test_ecran()) +" l'ecran n'existe pas (renvoi 0) " ; renvoi 0 puisque l'ecran n'existe pas

if OpenWindow(#win,0,0,800,600,"test",#PB_Window_SystemMenu     )
   if openwindowedscreen (WindowID(#win),0,0,800, 600, 1,1,1 ) ; on creer un ecran ( dans une fenetre pour pouvoir tracer )
      debug str(test_ecran() )+" <--ceci prouve qu'il existe (renvoi 1 )"  ; <<<<<<<<<<<  BUG  !!!     ...... he return 0  ????
      ; ************ boucle *******************
      repeat
         event=WaitWindowEvent(2)
      until event=#PB_Event_CloseWindow
      ; **************************************
      CloseScreen()
      CloseWindow(#win)
   endif
endif


debug str(test_ecran()) +" <--ceci prouve qu'il n'existe plus (renvoi 0 )"
calldebugger


procedure.b test_ecran()
   ; By Dobro
   calldebugger
   protected win=1000
   if OpenWindow(win,0,0,800,600,"test",#PB_Window_SystemMenu     )
      if openwindowedscreen (WindowID(win),0,0,800, 600, 1,1,1 ) ; <<<< ---- Bug  in seconde Trace  (ligne 12 )!
         
            CloseScreen() :CloseWindow(win)
            ProcedureReturn #false ; l'ecran n'existe pas           
         
         Else
            ProcedureReturn #true ; l'ecran existe deja ; <<<<<<< never here !! ???????????????
      endif
   endif
   
endprocedure


; EPB

_________________
Image


Haut
 Profil  
 
 Sujet du message: Re: bug Windowedscreen
MessagePosté: Mer 04/Avr/2012 20:49 
Hors ligne
Avatar de l’utilisateur

Inscription: Lun 26/Avr/2004 0:40
Messages: 13086
une reponse m'a été fournie ... je vous laisse juge :roll:


Citation:
If you create the second screen, the first screen will be close automatically, because there can be only one!


Code:
Enumeration
   #Window1
   #Window2
EndEnumeration

InitSprite()

OpenWindow(#Window1, 0, 0, 400, 400, "WindowTitle", #PB_Window_MinimizeGadget)
Debug OpenWindowedScreen(WindowID(#Window1), 0, 0, WindowWidth(#Window1), WindowHeight(#Window1), 0, 0, 0)

OpenWindow(#Window2, 500, 0, 400, 400, "WindowTitle", #PB_Window_MinimizeGadget)
Debug OpenWindowedScreen(WindowID(#Window2), 0, 0, WindowWidth(#Window2), WindowHeight(#Window2), 0, 0, 0)

Repeat
   
   Repeat
     
      Select WaitWindowEvent(10)
           
         Case #PB_Event_CloseWindow
            End
           
         Case #Null
            Break
           
      EndSelect
     
   ForEver
   
   ClearScreen(0)
   
   FlipBuffers()
   
ForEver


Citation:
if you wanna check whether a screen is opened, you must create a variable itself, and not abusing OpenWindowedScreen!

it is no bug, it is only not a feature



en clair , un OpenWindowedScreen() ecrase le précedent ! sans message d'erreur , sans indiquer le fait . .. hum !
ils considèrent que ça n'est pas un bug ... 8O ha ? bon ... :?

_________________
Image


Haut
 Profil  
 
 Sujet du message: Re: bug Windowedscreen
MessagePosté: Mer 04/Avr/2012 21:53 
Hors ligne

Inscription: Mer 11/Nov/2009 18:17
Messages: 1251
Localisation: Poitiers (Vienne)
Sons fout ses gaulois :mrgreen:

_________________
La vie, C'est comme, Une boitte, De startis, On en voie, De toutes, Les couleurs !

Mon forum http://purebasic.forumphp3.com/index.php


Haut
 Profil  
 
 Sujet du message: Re: bug Windowedscreen
MessagePosté: Lun 16/Avr/2012 18:09 
Hors ligne
Avatar de l’utilisateur

Inscription: Sam 19/Fév/2011 12:46
Messages: 929
Ça pourrait être intéressant pourtant de créer plusieurs écrans, par exemple pour du splitscreen avec les sprite3D :D.

_________________
http://blendman.blogspot.com/


Haut
 Profil  
 
 Sujet du message: Re: bug Windowedscreen
MessagePosté: Lun 16/Avr/2012 18:36 
Hors ligne
Avatar de l’utilisateur

Inscription: Lun 26/Avr/2004 0:40
Messages: 13086
blendman a écrit:
Ça pourrait être intéressant pourtant de créer plusieurs écrans, par exemple pour du splitscreen avec les sprite3D :D.


mon petit doigt me dis , que c'est prévu ... quand ??? ...

Un jour , un jour viendra , couleur d'orange
un jour viendra , un jour, de feuillages offrants
un jour d’épaules nues , ou les gens, s'aimeront
un jour comme un oiseau , sur la plus haute branche ...

_________________
Image


Haut
 Profil  
 
Afficher les messages postés depuis:  Trier par  
Poster un nouveau sujet Répondre au sujet  [ 5 messages ] 

Heures au format UTC + 1 heure


Qui est en ligne

Utilisateurs parcourant ce forum: Google Adsense [Bot] et 2 invités


Vous ne pouvez pas poster de nouveaux sujets
Vous ne pouvez pas répondre aux sujets
Vous ne pouvez pas éditer vos messages
Vous ne pouvez pas supprimer vos messages

Rechercher:
Aller à:  

 


Powered by phpBB © 2008 phpBB Group | Traduction par: phpBB-fr.com
subSilver+ theme by Canver Software, sponsor Sanal Modifiye