Switch Full Screen bordeless<==> Fenêtré (Window)

Partagez votre expérience de PureBasic avec les autres utilisateurs.
Avatar de l’utilisateur
falsam
Messages : 7244
Inscription : dim. 22/août/2010 15:24
Localisation : IDF (Yvelines)
Contact :

Switch Full Screen bordeless<==> Fenêtré (Window)

Message par falsam »

Ce code avec un peu d'API pour obtenir une application dans lequel il est possible d'alterner d'un mode fenêtré vers un mode FullScreen sans bordure et inversement.

Pas de gadget test, je n'ai laissé que l'essentiel. Vous passez d'un mode à l'autre avec la combinaison de touche Ctrl + Touche Entrée.

Code : Tout sélectionner

Enumeration Window
  #Mainform
EndEnumeration

Enumeration KeyBoard
  #FullScreen
EndEnumeration

Global WindowStyle.i=#PB_Window_MinimizeGadget|#PB_Window_MaximizeGadget|#PB_Window_ScreenCentered|#PB_Window_SizeGadget

Define fullScreen.b

Procedure OnResize()
  Debug "On Resize"
EndProcedure

Procedure FullScreen()
  Protected hWnd = WindowID(#Mainform)
  
  Select GetWindowState(#Mainform) 
    Case #PB_Window_Normal
      SetWindowState(#Mainform, #PB_Window_Maximize)
      SetWindowLong_(hWnd, #GWL_STYLE, GetWindowLong_(hWnd, #GWL_STYLE)&~#WS_CAPTION&~#WS_SIZEBOX) 
      ;Windows XP Only
      ;SetWindowPos_(hWnd, 0, 0, 0, 0, 0, #SWP_NOMOVE|#SWP_NOSIZE|#SWP_NOZORDER|#SWP_FRAMECHANGED|#SWP_DRAWFRAME)
      
    Case #PB_Window_Maximize
      SetWindowState(#Mainform, #PB_Window_Normal)
      SetWindowLong_(hWnd, #GWL_STYLE, GetWindowLong_(hWnd, #GWL_STYLE)|#WS_CAPTION|#WS_SIZEBOX) 
      ;Windows XP Only
      ;SetWindowPos_(hWnd, 0, 0, 0, 0, 0, #SWP_NOMOVE|#SWP_NOSIZE|#SWP_NOZORDER|#SWP_FRAMECHANGED|#SWP_DRAWFRAME)
      
    Case #PB_Window_Minimize
      
  EndSelect
EndProcedure

OpenWindow(#Mainform, 0, 0, 500, 400, "Full Screen Bordeless", WindowStyle)

AddKeyboardShortcut(#Mainform, #PB_Shortcut_Control|#PB_Shortcut_Return, #FullScreen)

BindEvent(#PB_Event_Menu, @fullScreen(), #Mainform, #FullScreen)
BindEvent(#PB_Event_SizeWindow, @OnResize())

Repeat : Until WaitWindowEvent(10) = #PB_Event_CloseWindow
Dernière modification par falsam le dim. 14/déc./2014 14:48, modifié 2 fois.
Configuration : Windows 11 Famille 64-bit - PB 6.03 x64 - AMD Ryzen 7 - 16 GO RAM
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
Avatar de l’utilisateur
Kwai chang caine
Messages : 6962
Inscription : sam. 23/sept./2006 18:32
Localisation : Isere

Re: Switch Full Screen bordeless<==> Fenêtré (Window)

Message par Kwai chang caine »

Merci FALSAM 8)
Je perd la barre de titre au retour, mais ça doit être du à XP SP3 :oops:
ImageLe bonheur est une route...
Pas une destination

PureBasic Forum Officiel - Site PureBasic
Avatar de l’utilisateur
falsam
Messages : 7244
Inscription : dim. 22/août/2010 15:24
Localisation : IDF (Yvelines)
Contact :

Re: Switch Full Screen bordeless<==> Fenêtré (Window)

Message par falsam »

Kwai chang caine a écrit :Je perd la barre de titre au retour, mais ça doit être du à XP SP3 :oops:
Tu vas m'obliger à remettre mon vieux pc sous XP en route ....

Dé commentes les lignes et ça fonctionnera.
Configuration : Windows 11 Famille 64-bit - PB 6.03 x64 - AMD Ryzen 7 - 16 GO RAM
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
Avatar de l’utilisateur
Kwai chang caine
Messages : 6962
Inscription : sam. 23/sept./2006 18:32
Localisation : Isere

Re: Switch Full Screen bordeless<==> Fenêtré (Window)

Message par Kwai chang caine »

Nadine boudin, c'était marqué dessus.... comme le porsalut :oops:
Marche nickel...
Je l'aurais un jour...je l'aurais :mrgreen:

Encore merci FALSAM 8)
ImageLe bonheur est une route...
Pas une destination

PureBasic Forum Officiel - Site PureBasic
Avatar de l’utilisateur
falsam
Messages : 7244
Inscription : dim. 22/août/2010 15:24
Localisation : IDF (Yvelines)
Contact :

Re: Switch Full Screen bordeless<==> Fenêtré (Window)

Message par falsam »

je suis étonné que fan de fred, tu n'es pas réagi que un des topics récent de ce forum. Je te laisse chercher hein ? :mrgreen:
Configuration : Windows 11 Famille 64-bit - PB 6.03 x64 - AMD Ryzen 7 - 16 GO RAM
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
Avatar de l’utilisateur
Kwai chang caine
Messages : 6962
Inscription : sam. 23/sept./2006 18:32
Localisation : Isere

Re: Switch Full Screen bordeless<==> Fenêtré (Window)

Message par Kwai chang caine »

Bah je vois pas.... 8O
Le bleme c'est que le WE, j'suis sous les ordres de "bobone" et "a rigole pas" bobone :?
En fin de compte, bobone, elle a inventé le HOOK de mon emploi du temps, mais dans le monde réel, j'suis interdit de PC à la maison, sauf pour bosser dessus :(
Alors j'arrive juste a pianoter dans la cabane au fond du jardin ou j'y vais quand j'ai besoin, quelques minutes et les fins de journée quand elle me laisse royal 1 heure ou deux.
Mais autrement des que je peux, je lis quasi tous les POST US et FR, le bleme c'est le "téléphone intelligent" c'est cool on peut lire partout, mais on peut rien tester, donc peut être suis je passé à coté de "CakeChose" :|

Je viens de chercher dans le US et après dans le FR
J'ai même triché...j'ai regardé à l'envers les réponses de FRED et Quedal, Nib, Nada....
Peut être ton code sur les inversions de bit ??
Mais je crois que la photo du canard je l'avais déjà vu...enfin il me semble... :oops:
ImageLe bonheur est une route...
Pas une destination

PureBasic Forum Officiel - Site PureBasic
Avatar de l’utilisateur
falsam
Messages : 7244
Inscription : dim. 22/août/2010 15:24
Localisation : IDF (Yvelines)
Contact :

Re: Switch Full Screen bordeless<==> Fenêtré (Window)

Message par falsam »

Kwai chang caine a écrit :Peut être ton code sur les inversions de bit ??
Gagné :)
Configuration : Windows 11 Famille 64-bit - PB 6.03 x64 - AMD Ryzen 7 - 16 GO RAM
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
Avatar de l’utilisateur
Kwai chang caine
Messages : 6962
Inscription : sam. 23/sept./2006 18:32
Localisation : Isere

Re: Switch Full Screen bordeless<==> Fenêtré (Window)

Message par Kwai chang caine »

Et oui, il fait parti des codes que je n'ai pu tester, donc enregistrer, à cause du robot vert... :|
Justement, je commençais à me poser la question de jeter un oeil à nouveau sur cette daube de prog ANDROID pour voir si j'arriverais à faire un petit utilitaire qui extrairait les codes sources en parsant le code HTML.
Parce qu'avec mes mains pleines de doigts, c'est "javel la croix" et la bannière pour faire juste un copié collé en txt :?

J'ai cru qu'il avait réagi sur le POST des GIF inutiles (Enfin d'apres FREAK :roll:)
Je viens aussi de voir le POST de Ars sur LYON (C'est la que j'ai découvert ce monde horrible, et que j'ai poussé mon premier cri :?)
Moi qu'est ce que ça peut me gonfler ces gens nostalgiques qui se mettent en travers du progrés en utilisant des formats d'images obsolètes (C'est comme "has been"...mais en "KiKoseBienLaFrance" :mrgreen:)
Donc je me suis dit, noël approchant, peut être que FRED tiendrait sa promesse...parce que mine (pas de crayon) de rien, il avait quand même promis de tout faire pour l’insérer un jour
Enfin bref....les miracles de noël, c'est comme les petits écoliers..c'est que pour les enfants :(
ImageLe bonheur est une route...
Pas une destination

PureBasic Forum Officiel - Site PureBasic
Répondre