pat a écrit:
Merci djes mais cela ne répond pas à ma question de savoir comment savoir quand un écran graphique est fermé.
suite a débat sur un bug présent ou pas a ce niveau sur le forum anglais ,
voici donc une solution de nco2k pour savoir si l’écran a été créé ou pas , (s'il est existant ou pas )
entre parenthèses , je ne sais pas comment ce code fonctionne ... mais il fonctionne

faut dire que je ne me suis jamais intéressé aux Imports
Code:
Import ""
PB_Screen_Windowed
EndImport
InitSprite()
OpenWindow(0, 0, 0, 640, 480, "Test", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
Debug "ecran actif ? :"+str(PB_Screen_Windowed)
OpenWindowedScreen(WindowID(0), 0, 0, WindowWidth(0), WindowHeight(0), 0, 0, 0)
Debug "ecran actif ? :"+str( PB_Screen_Windowed)
Repeat
Repeat
Select WindowEvent()
Case 0
Break
Case #PB_Event_CloseWindow
CloseScreen()
Debug "ecran actif ? :"+str( PB_Screen_Windowed)
Break 2
EndSelect
ForEver
ClearScreen(RGB(0, 100, 200))
FlipBuffers()
ForEver
merci a vous tous, ça a fait avancer le smilblick

djes a écrit:
A noter que le code de Dobro est la meilleure façon de gérer le basculement, grâce à l'ouverture d'une fenêtre pour gérer les évènements qui arrivent à l'appli, quand elle n'a plus le focus.
il y a juste ce Goto , qui pourrait faire peur a certain..
j'ai pas trouvé mieux

enfin , un goto reste un jump (courant en assembleur)
mais c'est vrais que je ne teste pas si le prg lanceur est toujours présent en Ram avant le goto...
c'est un problème facilement résolvable en ajoutant un test sur le nom de la fenetre (findwindow())
avant de risquer de sauter dans le vide

ce code me fait penser aux Trapezistes ;
dans un cirque , le premier (le prg) envoi le second sur l'autre trapèze ( en attente de relancement dans la barre des taches ) , et le second se jette dans le vide , en espérant que le premier (le prg ) soit toujours là
de la haut voltige je vous dis

imager les prg donne souvent des solutions
