Page 2 sur 2
Re: [..] Comment exploiter une interface
Posté : dim. 26 juin 2011 15:23
par MisterASUS
chouette merci de la correction mikell

Re: [..] Comment exploiter une interface
Posté : dim. 26 juin 2011 17:27
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
Code : Tout sélectionner
If GUICtrlRead ( $Inputa ) <> "Input1" And If GUICtrlRead ( $Inputb ) <> "Input2" And If GUICtrlRead ( $Inputc ) <> "Input3" Then
MsgBox (0, "Mister-ASUS"," Toutes les cases ont été remplies. N'oublier pas de sauvegarder !")
EndIf
Re: [..] Comment exploiter une interface
Posté : dim. 26 juin 2011 18:00
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)
Re: [..] Comment exploiter une interface
Posté : dim. 26 juin 2011 18:37
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/

Re: [..] Comment exploiter une interface
Posté : lun. 27 juin 2011 16:13
par mikell
Syntaxe...
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
Re: [..] Comment exploiter une interface
Posté : lun. 27 juin 2011 17:02
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

Re: [..] Comment exploiter une interface
Posté : lun. 27 juin 2011 18:05
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]
Re: [..] Comment exploiter une interface
Posté : lun. 27 juin 2011 18:17
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"
Re: [..] Comment exploiter une interface
Posté : lun. 27 juin 2011 20:17
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.
Re: [..] Comment exploiter une interface
Posté : mar. 28 juin 2011 00:26
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(...)
Re: [..] Comment exploiter une interface
Posté : mar. 28 juin 2011 21:28
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...