[R] Une fonction pour le full screen ?

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
Avatar du membre
arrkhan
Niveau 8
Niveau 8
Messages : 528
Enregistré le : sam. 17 nov. 2007 03:30
Status : Hors ligne

[R] Une fonction pour le full screen ?

#1

Message par arrkhan »

bonjour a tous,

je souhaiterai savoir s'il y a une fonction qui existe pour activer le fullscreen/F11 dans nos applis AutoIt comme on peut le voir par exemple dans Scite ou Firefox, plus de barre de titre et plus de barre windows

merci d'avance de vos reponses
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11791
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: […] Une fonction pour le full screen ?

#2

Message par Tlem »

Il faut pour cela, modifier la propriété de la fenêtre principale, en utilisant WS_POPUPWINDOW comme ceci :

Code : Tout sélectionner

#include <GUIConstants.au3>

$Form1 = GUICreate("Form1", 400, 400, -1, -1, $WS_POPUPWINDOW)
GUISetState(@SW_SHOW)

While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
        Case $GUI_EVENT_CLOSE
            Exit

    EndSwitch
WEnd
Modifié en dernier par tolf le mer. 07 janv. 2009 21:51, modifié 1 fois.
Raison : mise à jour des balises de code
Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
ani
Niveau 11
Niveau 11
Messages : 1826
Enregistré le : lun. 23 juil. 2007 12:31
Localisation : Bureau
Status : Hors ligne

Re: […] Une fonction pour le full screen ?

#3

Message par ani »

j'ai pas suivit la demande :(

la fonction faut la créer :o ma question serait de savoir
1. si tu désire lors du lancement de l'application, le maximisé ?
2. Envoyé dans l'application la fonction du F11 ?

la proposition de tlem n'indique pas l'encadrement comme pour une fenetre ayant un menu
$popupwindow = menu

autoit dispose de macro système comme la résolution écran
@DesktopHeight (résolution vertical
@DesktopWidth (résolution horizontal)

si tu désire juste agrandir ta fénêtre indique ceux-ci (double click dans la barre titre)
$Form1 = GUICreate("Form1", 400, 400, -1, -1,$WS_MAXIMIZEBOX)

ou encore

Code : Tout sélectionner

#include <GUIConstants.au3> 

HotKeySet("{F11}", "fullscreen")

$Form1 = GUICreate("Form1", 400, 400, -1, -1)
GUISetState(@SW_SHOW)

While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
        Case $GUI_EVENT_CLOSE
            Exit
    EndSwitch
WEnd

func fullscreen()
    GUISetState(@SW_MAXIMIZE ,$form1)
EndFunc
 
normalement il est possible d'envoyé dans la form1 le style et son extension voilà ;)
Modifié en dernier par tolf le mer. 07 janv. 2009 21:51, modifié 1 fois.
Raison : mise à jour des balises de code
Avatar du membre
arrkhan
Niveau 8
Niveau 8
Messages : 528
Enregistré le : sam. 17 nov. 2007 03:30
Status : Hors ligne

Re: […] Une fonction pour le full screen ?

#4

Message par arrkhan »

mon message ayant disparu pendant le transfert, je le remet

merci a vous deux pour votre reponse rapide

@tlem ben c'est presque ca mais en faisant en sorte que la fenetre passe au dessus du classname=Shell_TrayWnd windows

@ani ben c'est presque ca mais sans la barre de titre ^^

en fait, c'est un mix entre vos deux proposition, avec la possiblité de revenir a la taille de fenetre par defaut en utilisant le meme raccourci, je continu a chercher
PCXeon2
Niveau 1
Niveau 1
Messages : 13
Enregistré le : dim. 16 déc. 2007 10:42
Status : Hors ligne

Re: […] Une fonction pour le full screen ?

#5

Message par PCXeon2 »

et Voila je vais faire ton bonheur :)

Code : Tout sélectionner

#include <GUIConstants.au3> 

HotKeySet("{F11}", "fullscreen")
$full = 0
$Form1 = GUICreate("Form1", 400, 400, -1, -1)
GUISetState(@SW_SHOW)

While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
        Case $GUI_EVENT_CLOSE
            Exit
    EndSwitch
WEnd

func fullscreen()
    if $full = 0 Then
        GUISetStyle($WS_POPUP,$WS_EX_APPWINDOW,$form1)
        GUISetState(@SW_MAXIMIZE ,$form1)
        $full = 1
    Elseif $full = 1 Then
        GUISetState(@SW_RESTORE ,$form1)
        GUISetStyle($WS_MINIMIZEBOX + $WS_CAPTION + $WS_POPUP + $WS_SYSMENU, 0,$form1)
        $full = 0
    EndIf
EndFunc
Modifié en dernier par tolf le mer. 07 janv. 2009 21:52, modifié 1 fois.
Raison : mise à jour des balises de code
ani
Niveau 11
Niveau 11
Messages : 1826
Enregistré le : lun. 23 juil. 2007 12:31
Localisation : Bureau
Status : Hors ligne

Re: […] Une fonction pour le full screen ?

#6

Message par ani »

c'est presque çà :o

regarde l'exemple fournis par la fonction GUISetStyle & GUIGetStyle
je n'ai pas indiquer avec c'est fonction car elle ne fonctionne pas du tout dans les version précédente.
Donc ici je recherche l'appel >handle::Style:ExtendStyle ^__^
Avatar du membre
arrkhan
Niveau 8
Niveau 8
Messages : 528
Enregistré le : sam. 17 nov. 2007 03:30
Status : Hors ligne

Re: […] Une fonction pour le full screen ?

#7

Message par arrkhan »

c'est quasi ca, mais n'y a t il pas moyen de remplacer le hotkey par un _IsPressed si la fenetre en question est au premier plan car meme en etant sur un autre appli, le fait d'appuyer sur F11 maximise le test

P.S.: en fait je n'ai pas reelement besoin de cette fonction, mais je me suis dit que si elle existe pour d'autres appli, autant se faire un petit brainstorming dessus, comme ca le jour où ca peut servir a quelqu'un...... et je n'ai trouve aucune info sur le fofo angliche

tiens , une tit idee qui germe, est il possible d'appliquer ce full screen a l'application qui se trouve le plus haut dans le z-order ? de maniere a integrer la fonction a toutes les fenetres de windows (hesitez pas a le dire si je raconte des conneries ^^)
ani
Niveau 11
Niveau 11
Messages : 1826
Enregistré le : lun. 23 juil. 2007 12:31
Localisation : Bureau
Status : Hors ligne

Re: [..] Une fonction pour le full screen ?

#8

Message par ani »

oui on peut remplacer le hotkey par un ispressed.

j'ai essayé en ajoutant une fonction supplémentaire (wingetstate), mais y a un problème, si le test se trouve en arriere plan il ne se maximise pas idem pour les autre programmes :(
faudrai voir avec le vm command (ou une dllstructure) ou je ne sais quoi.

je promet rien, je vais voir du coté anglophone et poser la question.Mais vu mon bagot anglophone il ne comprenne pas , comme ici :D
Sauf si toi t'a la question en anglais hésite pas a me pm, sauf si tu es enregistrer sur le fofo anglais ;) alors gooo ;)

je regarde dans l'aide aussi on sait jamais qui aurait une option a ajouter :(
ani l'incompris,,,, c'est injuste ^^'
Répondre