AutoIt Français

Nouveau forum : http://www.autoitscript.fr/
 
AccueilFAQRechercherS'enregistrerMembresGroupesConnexionhttp://www.autoitscript.fr

Partagez | 
 

 [RESOLU] plusieurs $GUI_SHOW et $GUI_HIDE sur une meme ligne

Voir le sujet précédent Voir le sujet suivant Aller en bas 
AuteurMessage
Vins83
Membre affirmé


Nombre de messages : 106
Localisation : Hyeres (83)
Date d'inscription : 28/02/2007

MessageSujet: [RESOLU] plusieurs $GUI_SHOW et $GUI_HIDE sur une meme ligne   2007-04-23, 21:11

Bonsoir tout le monde , je galere un peu avec les $GUI_SHOW et $GUI_HIDE , je voudrais mettre un max de choix sur $GUI_HIDE , comme ceux ci :

GUIctrlSetState ( $1 + $2 + $3 etc , $GUI_HIDE )

c'est juste pour eviter de faire des lignes a ralonge pour gagner de la place comme plus bas :

GUIctrlSetState ( $1 , $GUI_HIDE )
GUIctrlSetState ( $2 , $GUI_HIDE )
GUIctrlSetState ( $3 , $GUI_HIDE )
GUIctrlSetState ( $4 , $GUI_HIDE )

Merci pour votre aide

@+ Vins


Dernière édition par le 2007-05-28, 20:04, édité 1 fois
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
sylvanie
Modérateur
Modérateur


Nombre de messages : 300
Date d'inscription : 10/03/2007

MessageSujet: Re: [RESOLU] plusieurs $GUI_SHOW et $GUI_HIDE sur une meme ligne   2007-04-23, 22:01

Fais toi un tableau contenant les différents id des ctrl, et tu passes par un for :

[code]Dim $tab[4]=[$1,$2,$3,$4]

for $ind=0 to 3
GUIctrlSetState ( $tab[$ind] , $GUI_HIDE )
Next[/code]


Dernière édition par le 2007-05-01, 23:24, édité 1 fois
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Vins83
Membre affirmé


Nombre de messages : 106
Localisation : Hyeres (83)
Date d'inscription : 28/02/2007

MessageSujet: Re: [RESOLU] plusieurs $GUI_SHOW et $GUI_HIDE sur une meme ligne   2007-04-24, 18:14

Sa marche pas chez moi,je ne comprend pas pourquoi,pourtant il me semble avoir piger ton truc :

Dim $tab[8] = [$1,$2,$3,$4,$5,$6,$7,$8]

; Carte à puce
case $msg = $SCardSvritem
GUIctrlSetState ( $1 , $GUI_SHOW )
GUIctrlSetState ( $2 , $GUI_SHOW )
for $ind=3 to 8
GUIctrlSetState ( $tab[$ind] , $GUI_HIDE )
Next


ou est mon erreur svp?

Merci

@+ Vins
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
sylvanie
Modérateur
Modérateur


Nombre de messages : 300
Date d'inscription : 10/03/2007

MessageSujet: Re: [RESOLU] plusieurs $GUI_SHOW et $GUI_HIDE sur une meme ligne   2007-04-24, 20:26

[quote:4a2f="Vins83"]Sa marche pas chez moi,je ne comprend pas pourquoi,pourtant il me semble avoir piger ton truc :

Dim $tab[8] = [$1,$2,$3,$4,$5,$6,$7,$8]

; Carte à puce
case $msg = $SCardSvritem
GUIctrlSetState ( $1 , $GUI_SHOW )
GUIctrlSetState ( $2 , $GUI_SHOW )
for $ind=3 to [color=red]7[/color]
GUIctrlSetState ( $tab[$ind] , $GUI_HIDE )
Next


ou est mon erreur svp?

Merci

@+ Vins[/quote]
L'index d'un tableau commence tjrs à 0, donc tes indices ne peuvent variés que de 0 à 7, et non 8
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Vins83
Membre affirmé


Nombre de messages : 106
Localisation : Hyeres (83)
Date d'inscription : 28/02/2007

MessageSujet: Re: [RESOLU] plusieurs $GUI_SHOW et $GUI_HIDE sur une meme ligne   2007-05-01, 11:03

Aprés plusieurs éssai,cela ne marche toujours pas..

Peu etre faut il mettre un include particulier pour que cela marche??

Merci

@+ Vins
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
sylvanie
Modérateur
Modérateur


Nombre de messages : 300
Date d'inscription : 10/03/2007

MessageSujet: Re: [RESOLU] plusieurs $GUI_SHOW et $GUI_HIDE sur une meme ligne   2007-05-01, 23:26

si c'était un pb d'include, tu aurais de suite une erreur d'interprétation comme quoi il y a une constante ou une fonction qu'il ne connaît pas.
Cependant, ton erreur se manifeste par quoi :
- aucun des ctrl ne disparait ?
- qq uns seulement et pas les autres ?
- autre chose ?
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Vins83
Membre affirmé


Nombre de messages : 106
Localisation : Hyeres (83)
Date d'inscription : 28/02/2007

MessageSujet: Re: [RESOLU] plusieurs $GUI_SHOW et $GUI_HIDE sur une meme ligne   2007-05-06, 21:40

Voilà le code sur lequel je test sans sucés:

#include < GUIConstants.au3>

Dim $1,$2,$3,$4

GUICreate("GUI with more treeviews",340,140,-1,-1)

$maintree = GUICtrlCreateTreeView (10,10,120,90)
$generalitem = GUICtrlCreateTreeViewItem ("General",$maintree)
$effectitem = GUICtrlCreateTreeViewItem ("Effects",$generalitem)
$styleitem = GUICtrlCreateTreeViewItem ("Styles",$generalitem)

$4 = GUICtrlCreateGroup ("Effects",140,5,180,95)
GUICtrlSetState (-1,$GUI_HIDE)
$3 = GUICtrlCreateTreeView (150,20,160,70)
GUICtrlSetState (-1,$GUI_HIDE)

$2 = GUICtrlCreateGroup ("Styles",140,5,180,95)
GUICtrlSetState (-1,$GUI_HIDE)
$1 = GUICtrlCreateTreeView (150,20,160,70)
GUICtrlSetState (-1,$GUI_HIDE)

$cancelbutton = GUICtrlCreateButton ("Cancel",130,110,70,20)
GUISetState()

Dim $tab[4] = [$1,$2,$3,$4]

While 1
$msg = GUIGetMsg()
Select
Case $msg = -3 Or $msg = -1 Or $msg = $cancelbutton
ExitLoop
Case $msg = $effectitem
for $ind=2 to 3
GUIctrlSetState ( $tab[$ind] , $GUI_SHOW )
Next
GUICtrlSetBkColor ($3,0xD0F0F0)
for $ind=0 to 1
GUIctrlSetState ( $tab[$ind] , $GUI_HIDE )
Next
Case $msg = $styleitem
for $ind=0 to 1
GUIctrlSetState ( $tab[$ind] , $GUI_SHOW )
Next
GUICtrlSetBkColor ($1,0xD0FFD0)
for $ind=2 to 3
GUIctrlSetState ( $tab[$ind] , $GUI_HIDE )
Next
EndSelect
WEnd

GUIDelete()
Exit




Si vous savez,je suis preneur,j'ai toujours un petit probleme avec et je ne comprend pas ..

Merci

@+ Vins


Dernière édition par le 2007-05-08, 07:23, édité 2 fois
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
sylvanie
Modérateur
Modérateur


Nombre de messages : 300
Date d'inscription : 10/03/2007

MessageSujet: Re: [RESOLU] plusieurs $GUI_SHOW et $GUI_HIDE sur une meme ligne   2007-05-06, 23:31

je suis perplexe ... ton script semble bien marcher ...
j'anticipe une remarque peut être à tort :
si c'est sur le fait que tu ne vois pas tes treeview, c'est parceque tu n'y a mis aucun item
je te remets ton script avec des item en plus et en mettant la priorité sur l'effacement avant l'affichage

#include <GUIConstants.au3>

Dim $1, $2, $3, $4

GUICreate("GUI with more treeviews", 340, 140, -1, -1)

$maintree = GUICtrlCreateTreeView(10, 10, 120, 90)
$generalitem = GUICtrlCreateTreeViewItem("General", $maintree)
$effectitem = GUICtrlCreateTreeViewItem("Effects", $generalitem)
$styleitem = GUICtrlCreateTreeViewItem("Styles", $generalitem)

$4 = GUICtrlCreateGroup("Effects", 140, 5, 180, 95)
GUICtrlSetState(-1, $GUI_HIDE)
$3 = GUICtrlCreateTreeView(150, 20, 160, 70)
GUICtrlSetState(-1, $GUI_HIDE)
$31=GUICtrlCreateTreeViewItem("branche_effects1", $3)

$2 = GUICtrlCreateGroup("Styles", 140, 5, 180, 95)
GUICtrlSetState(-1, $GUI_HIDE)
$1 = GUICtrlCreateTreeView(150, 20, 160, 70)
GUICtrlSetState(-1, $GUI_HIDE)
$11=GUICtrlCreateTreeViewItem("branche_styles1", $1)

$cancelbutton = GUICtrlCreateButton("Cancel", 130, 110, 70, 20)
GUISetState()

While 1
$msg = GUIGetMsg()
Select
Case $msg = -3 Or $msg = -1 Or $msg = $cancelbutton
ExitLoop
Case $msg = $effectitem
GUICtrlSetState($1, $GUI_HIDE)
GUICtrlSetState($2, $GUI_HIDE)
GUICtrlSetState($4, $GUI_SHOW)
GUICtrlSetState($3, $GUI_SHOW)
GUICtrlSetBkColor($3, 0xD0F0F0)

Case $msg = $styleitem
GUICtrlSetState($3, $GUI_HIDE)
GUICtrlSetState($4, $GUI_HIDE)
GUICtrlSetState($2, $GUI_SHOW)
GUICtrlSetState($1, $GUI_SHOW)
GUICtrlSetBkColor($1, 0xD0FFD0)
EndSelect
WEnd

GUIDelete()
Exit
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Vins83
Membre affirmé


Nombre de messages : 106
Localisation : Hyeres (83)
Date d'inscription : 28/02/2007

MessageSujet: Re: [RESOLU] plusieurs $GUI_SHOW et $GUI_HIDE sur une meme ligne   2007-05-07, 08:12

J'ai modifier mon script en y incluant dans mon poste au dessus un:
for $ind=1 to 2
GUIctrlSetState ( $tab[$ind] , $GUI_HIDE )
Next

Mais tu veras qu'il y a un petit bug,comment le réparer

@+ Vins
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
sylvanie
Modérateur
Modérateur


Nombre de messages : 300
Date d'inscription : 10/03/2007

MessageSujet: Re: [RESOLU] plusieurs $GUI_SHOW et $GUI_HIDE sur une meme ligne   2007-05-07, 21:25

ça y est je viens de voir LE bug
Pour les amateurs de "Où est Charlie" c'est pas mal... Pour ceux qui comme moi ne l'avaient pas vu, c'est le titre du groupbox qui bug quad on passe de quand on passe de Styles à Effects .
Maintenant pourquoi ??
C'est parce que tu déclare ton tableau
Dim $tab[4] = [$1,$2,$3,$4]
trops tôt. Au moment ou tu le créestab reçoit["","","",""]
et même si tu renseignes $1,$2,$3et $4 après, $tab n'es pas mis à jour
Donc ta boucle
for $ind=1 to 2
GUIctrlSetState ( $tab[$ind] , $GUI_HIDE )
Next

équivaut à
for $ind=1 to 2
GUIctrlSetState ( "" , $GUI_HIDE )
Next

et donc pas d'effacement.

mets Dim $tab[4] = [$1,$2,$3,$4] une fois que tu as créés ton dernier contrôle
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Contenu sponsorisé




MessageSujet: Re: [RESOLU] plusieurs $GUI_SHOW et $GUI_HIDE sur une meme ligne   Aujourd'hui à 08:42

Revenir en haut Aller en bas
 
[RESOLU] plusieurs $GUI_SHOW et $GUI_HIDE sur une meme ligne
Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Baisser la taille de plusieurs photos en même temps
» Mettre Staff sur la même ligne (tableau)
» Deux ordinateurs simultanément en WiFi.
» Aligner les sous forums en colonne et pas sur la meme ligne
» Mettre ma box et ma vidéo sur la même ligne

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
AutoIt Français :: AutoIt v3 :: Entraide-
Sauter vers: