[..] Comment exploiter une interface

Aide sur les Interfaces Graphique Utilisateurs (GUI).
Règles du forum
.
MisterASUS
Niveau 2
Niveau 2
Messages : 21
Enregistré le : jeu. 23 juin 2011 16:57
Status : Hors ligne

Re: [..] Comment exploiter une interface

#21

Message par MisterASUS »

chouette merci de la correction mikell :D
MisterASUS
Niveau 2
Niveau 2
Messages : 21
Enregistré le : jeu. 23 juin 2011 16:57
Status : Hors ligne

Re: [..] Comment exploiter une interface

#22

Message par MisterASUS »

Bon j'aurais voulu retirer tout les avertissements "ok" à chaque fois que le nom du joueur est remplis alors j'ai voulu faire la ligne suivante mais il me dit que c'est pas bon ... que manque t'il ? (et si je le met avant while 1 ca ne dérange pas ?
► Afficher le texte
Avatar du membre
mikell
Spammer !
Spammer !
Messages : 6292
Enregistré le : dim. 29 mai 2011 17:32
Localisation : Deep Cévennes
Status : Hors ligne

Re: [..] Comment exploiter une interface

#23

Message par mikell »

Petite erreur de syntaxe (les If)

Code : Tout sélectionner

If GUICtrlRead ($Inputa) <> "Input1" And GUICtrlRead ($Inputb) <> "Input2" And GUICtrlRead ($Inputc) <> "Input3" Then
   MsgBox (0, "Mister-ASUS"," Toutes les cases ont été remplies. N'oublier pas de sauvegarder !")
EndIf
Pour le while fais des tests, mais si tu peux éviter de le mettre dedans c'est mieux (ou alors dans un "Case" ça va)
" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
MisterASUS
Niveau 2
Niveau 2
Messages : 21
Enregistré le : jeu. 23 juin 2011 16:57
Status : Hors ligne

Re: [..] Comment exploiter une interface

#24

Message par MisterASUS »

ok en effet les If étaient de trop et je l'avais bien mis avant le while 1 donc j'avais fait la bonne démarche :) (je m'améliore doucement et j'ai beaucoup appris grâce à vous Tous et je vous en remercie grandement)
Bon vu que le fenêtre me pop au nez à chaque fois que j'ouvre le programme, il n'y à pas moyen de lui dire de mettre genre

Code : Tout sélectionner

If GUICtrlRead ($Inputa) <> $Inputa And GUICtrlRead ($Inputb) <> $Inputb And GUICtrlRead ($Inputc) <> $Inputc Then
   MsgBox (0, "Mister-ASUS"," Il y à eu une modification de la case, n'oublie pas de sauvegarder !")
j'ai bien essayer la ligne qui suis mais ca ne vas pas, ca dois être encore une faute de syntaxe je suppose

Edite : ... je suuiiiis... Niveau 2 \o/ :lol:
Avatar du membre
mikell
Spammer !
Spammer !
Messages : 6292
Enregistré le : dim. 29 mai 2011 17:32
Localisation : Deep Cévennes
Status : Hors ligne

Re: [..] Comment exploiter une interface

#25

Message par mikell »

Syntaxe... :roll:

Code : Tout sélectionner

If GUICtrlRead ($Inputa) <> $Inputa
GUICtrlRead ($Inputa) => c'est le texte écrit dans l'input
$Inputa => c'est le handle de l'input

Si tu veux pas que la msgbox te saute au nez, ou bien tu lui mets une condition, ou bien tu mets ta ligne après le Wend : dans ce cas, dans le while tu mets "ExitLoop" au lieu de "Exit", et la ligne sera lue juste avant la fermeture du script

Dis donc tu l'as lu le fichier d'aide ?
Et ça ? http://www.siteduzero.com/tutoriel-3-22 ... utoit.html
" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
MisterASUS
Niveau 2
Niveau 2
Messages : 21
Enregistré le : jeu. 23 juin 2011 16:57
Status : Hors ligne

Re: [..] Comment exploiter une interface

#26

Message par MisterASUS »

oui j'avais lu et j'avais d'ailleurs essayer deux autre formules qui me semblaient plus juste que le déchet que j'ai poster xD c'est vrais que ca voulais rien dire^^

j'avais penser plus à

Code : Tout sélectionner

if GUICtrlRead ($Inputa <> $Inputa)...
ou à
If GUICtrlRead ($Inputa) <> GUICtrlRead ($Inputa)...
C'était déjà plus juste au niveau lecture.
Et oui j'avais lu mais j'ai taper la phrase à l'arrache et j'avoue que je n'aurais pas dus.
Toute façon c'était malheureusement pas bon ^^", plus correct mais pas bon :)
Avatar du membre
mikell
Spammer !
Spammer !
Messages : 6292
Enregistré le : dim. 29 mai 2011 17:32
Localisation : Deep Cévennes
Status : Hors ligne

Re: [..] Comment exploiter une interface

#27

Message par mikell »

MisterASUS a écrit :

Code : Tout sélectionner

if GUICtrlRead ($Inputa <> $Inputa)...   <== [img]http://www.autoitscript.fr/emoticons/non.gif[/img]
ou à
If GUICtrlRead ($Inputa) <> GUICtrlRead ($Inputa)...   <== [img]http://www.autoitscript.com/forum/public/style_emoticons/autoit/sick.gif[/img]
" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
pierrotm777
Membre émérite
Membre émérite
Messages : 770
Enregistré le : sam. 11 oct. 2008 14:44
Localisation : Bordeaux
Status : Hors ligne

Re: [..] Comment exploiter une interface

#28

Message par pierrotm777 »

mikell a raison,
votre syntaxe n'est pas bonne:
votre variable $Inputa définie dans votre cas un input:
$Inputa = GUICtrlCreateInput("Input1", 88, 40, 121, 21)

et pour vérifier si ce qui est a l'intérieur est différent vous devez donc utiliser la fonction GUICtrlRead:
If GUICtrlRead ( $Inputa ) <> "Input1"
MisterASUS
Niveau 2
Niveau 2
Messages : 21
Enregistré le : jeu. 23 juin 2011 16:57
Status : Hors ligne

Re: [..] Comment exploiter une interface

#29

Message par MisterASUS »

je me suis mal exprimer sur deux points et je m'en excuse je fatigue un peux avec tout ces nouvelles choses que je dois retenir^^

1) je savais que les deux phrases que j'ai mises étaient fausses, je disais que c'était plus crédible (même si faux) que d'avoir ca : If GUICtrlRead ($Inputa) <> $Inputa
d'où le " Toute façon c'était malheureusement pas bon ^^", plus correct mais pas bon :)"

2)ce qui coince c'est au niveau du bouton sauvegarde qui fait que la valeur dans la case peut être n'importe laquelle. si pour le joueur nord je met mikell et que je sauvegarde.
au prochaine démarrage il serra donc marquer mikell (logique en sois) mais c'est seulement si je change maintenant le nom de mikell par le nom de pierrotm777 que je voudrais qu'il me met l'avertissement pour la sauvegarde... pareil au prochain redemarrage

c'est pour ca que j'essaye de trouver la valeur dans Inputa et ensuite que si elle change, il me dis par msgbox de sauvegarder.
Avatar du membre
mikell
Spammer !
Spammer !
Messages : 6292
Enregistré le : dim. 29 mai 2011 17:32
Localisation : Deep Cévennes
Status : Hors ligne

Re: [..] Comment exploiter une interface

#30

Message par mikell »

l'ancien nom est stocké dans le ini, le nouveau est écrit dans l'input
Donc la solution :

Code : Tout sélectionner

$nom1 = IniRead ($MyIni , "Dialog", "Nom du joueur nord", "...")   ; en début de script
$nom2 = GuiCtrlRead($input)
If $nom1 <> $nom2 Then MsgBox(...)
" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
MisterASUS
Niveau 2
Niveau 2
Messages : 21
Enregistré le : jeu. 23 juin 2011 16:57
Status : Hors ligne

Re: [..] Comment exploiter une interface

#31

Message par MisterASUS »

depuis hier je cherche sans arrêt et sincèrement j'aurais jamais penser à ca !!
j'ai chercher sur le site du zéro et tout mais là ... merci beaucoup...
Répondre