[R] GUI non déplaçable

Aide sur les Interfaces Graphique Utilisateurs (GUI).
Règles du forum
.
Répondre
Hugues
Niveau 8
Niveau 8
Messages : 597
Enregistré le : ven. 21 sept. 2012 18:12
Status : Hors ligne

[R] GUI non déplaçable

#1

Message 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
Modifié en dernier par Hugues le ven. 05 déc. 2014 14:13, modifié 1 fois.
Avatar du membre
TommyDDR
Modérateur
Modérateur
Messages : 2086
Enregistré le : mar. 22 juil. 2008 21:55
Localisation : Nantes
Status : Hors ligne

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

#2

Message 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 ^^)
3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679
Hugues
Niveau 8
Niveau 8
Messages : 597
Enregistré le : ven. 21 sept. 2012 18:12
Status : Hors ligne

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

#3

Message 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.
Avatar du membre
yohan8
Niveau 6
Niveau 6
Messages : 245
Enregistré le : mer. 07 déc. 2011 22:34
Localisation : Rhône
Status : Hors ligne

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

#4

Message par yohan8 »

Il me semble que Opt("GUIResizeMode", $GUI_DOCKALL) permet d'éviter ce genre de désagrément.
Avatar du membre
TommyDDR
Modérateur
Modérateur
Messages : 2086
Enregistré le : mar. 22 juil. 2008 21:55
Localisation : Nantes
Status : Hors ligne

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

#5

Message 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.
3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679
Avatar du membre
cutprod
Niveau 6
Niveau 6
Messages : 273
Enregistré le : jeu. 30 sept. 2010 17:25
Localisation : Sud Ouest
Status : Hors ligne

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

#6

Message 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
Cut, srcipteur du dimanche...désolé !-)
Hugues
Niveau 8
Niveau 8
Messages : 597
Enregistré le : ven. 21 sept. 2012 18:12
Status : Hors ligne

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

#7

Message 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
Avatar du membre
TommyDDR
Modérateur
Modérateur
Messages : 2086
Enregistré le : mar. 22 juil. 2008 21:55
Localisation : Nantes
Status : Hors ligne

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

#8

Message par TommyDDR »

Pouvez vous fournir un csv bidon avec lequel vous reproduisez le problème ?
3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679
Hugues
Niveau 8
Niveau 8
Messages : 597
Enregistré le : ven. 21 sept. 2012 18:12
Status : Hors ligne

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

#9

Message par Hugues »

Avatar du membre
TommyDDR
Modérateur
Modérateur
Messages : 2086
Enregistré le : mar. 22 juil. 2008 21:55
Localisation : Nantes
Status : Hors ligne

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

#10

Message 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)
3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679
Hugues
Niveau 8
Niveau 8
Messages : 597
Enregistré le : ven. 21 sept. 2012 18:12
Status : Hors ligne

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

#11

Message par Hugues »

Ok merci beaucoup :mrgreen:

Sujet résolu
Répondre