Page 1 sur 1

[R] GUI non déplaçable

Posté : mer. 03 déc. 2014 13:40
par Hugues
Bonjour,

Je n'arrive pas à bloquer mon GUI qui est affiché en plein écran grace à la fonction:

Code : Tout sélectionner

WinSetState($MainGUI, "", @SW_MAXIMIZE)
J'ai trouvé la fonction Func WM_WINDOWPOSCHANGING($hWnd, $iMsg, $wParam, $lParam)
pour empêcher le GUI de ne pas bouger mais ça ne fonctionne pas avec le WinSetState... Lorsque j'essai de bouger mon GUI avec la barre de titre, le GUI se redimensionne avec la valeur de défaut qu'il a été créé...

Ci joint mon code.
► Afficher le texte

Re: [..] GUI non déplaçable

Posté : mer. 03 déc. 2014 13:51
par TommyDDR
Vous pouvez éventuellement ne plus passer par le maximise :
► Afficher le textecode
Mais pourquoi vouloir bloquer un redimentionnement quelles sont vos contraintes ?
(Personnellement lorsque l'on ne me laisse pas ce genre de choix je n'utilise pas le programme ^^)

Re: [..] GUI non déplaçable

Posté : mer. 03 déc. 2014 14:23
par Hugues
Bah en fait, c'est que lorsque je réduis ma fenêtre, les contrôles bougent dans tout les "sens" quand on redimensionne le GUI avec la souris.

Re: [..] GUI non déplaçable

Posté : mer. 03 déc. 2014 14:50
par yohan8
Il me semble que Opt("GUIResizeMode", $GUI_DOCKALL) permet d'éviter ce genre de désagrément.

Re: [..] GUI non déplaçable

Posté : mer. 03 déc. 2014 16:41
par TommyDDR
$GUI_DOCKALL fixera vos controls, donc une réduction fera disparaitre ceux-ci.

Essayez de regarder du coté de GUICtrlSetResizing et de mettre la bonne valeur pour chaque control, vous arriverez forcément à un résultat qui vous conviendra.

Sinon envoyez votre code avec les contrôls qui vous dérange, je regarderai.

Re: [..] GUI non déplaçable

Posté : mer. 03 déc. 2014 20:30
par cutprod
Bonjour, pour empêcher de pouvoir manipuler la gui d'un script j'utilise cette fonction :

Code : Tout sélectionner

#Include <GUIConstantsEx.au3>

;Global Const $WM_SYSCOMMAND = 0x0112
Global Const $SC_MOVE = 0xF010
Global Const $SC_SIZE = 0xF000
Global Const $SC_CLOSE = 0xF060
Global Const $SC_MAXIMIZE = 0xF030
Global Const $SC_MINIMIZE = 0xF020

$gui = GUICreate("")
GUISetState()

GUIRegisterMsg(0x0112, "OnSysCommand")

While GUIGetMsg() <> $GUI_EVENT_CLOSE
WEnd


Func OnSysCommand($hWnd, $Msg, $wParam, $lParam)
    $test = BitAND($wParam, 0xFFF0)
    If $test = 0xF010 Then;OR $test = 0xF020 Then ;a decommanter si on veut ajouter des interdit (reduire...)
    Return False
    EndIf
    Return $GUI_RUNDEFMSG
EndFunc

Re: [..] GUI non déplaçable

Posté : jeu. 04 déc. 2014 13:54
par Hugues
Bon, je reviens à la charge ^^.

Comme la nuit porte conseil, je me suis dit qu'effectivement pourquoi empecher le déplacement de ma GUI?

Je tiens à remercier tous ceux qui m'ont apporté leur aide pour ma question.

J'ai modifié tout mon code, mais je reste encore "bloqué" avec le resizing... J'ai une scrollbar horizontale et verticale lorsque j'ai beaucoup de données à afficher dans ma ListView.

Si j'ai trop de données, ma ScrollBar horizontal se mélange avec ma StatusBar ( ça fait franchement dégeu..)

Si j'ouvre un fichier csv et que mon gui n'est pas en plein écran, et qu'ensuite j'agrandi mon gui, ma ListView ne rempli pas pas tout mon GUI...

Ci joint mon code complet.... POUR QU'IL FONCTIONNE FAIRE UN FICHIER CSV BIDON

Merci par avance pour votre aide.

► Afficher le texte

Re: [..] GUI non déplaçable

Posté : jeu. 04 déc. 2014 22:55
par TommyDDR
Pouvez vous fournir un csv bidon avec lequel vous reproduisez le problème ?

Re: [..] GUI non déplaçable

Posté : ven. 05 déc. 2014 09:04
par Hugues

Re: [..] GUI non déplaçable

Posté : ven. 05 déc. 2014 13:14
par TommyDDR
Vous n'utilisez pas de resizing pour les controls, pour votre projet je vous conseille de mettre un resizing par défaut égal aux 4 bords pour que la liste s'agrandisse avec le redimensionnement

rajoutez en début de script :

Code : Tout sélectionner

Opt("GUIResizeMode", BitOR($GUI_DOCKLEFT, $GUI_DOCKTOP, $GUI_DOCKRIGHT, $GUI_DOCKBOTTOM))
Si vous avez des controls spécifique, utilisez GUICtrlSetResizing (essayez de jouer avec les valeurs pour voir les effets)

Re: [..] GUI non déplaçable

Posté : ven. 05 déc. 2014 14:12
par Hugues
Ok merci beaucoup :mrgreen:

Sujet résolu