[R] Edition d'un fichier choisi dans une liste

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
pierrotm777
Membre émérite
Membre émérite
Messages : 770
Enregistré le : sam. 11 oct. 2008 14:44
Localisation : Bordeaux
Status : Hors ligne

[R] Edition d'un fichier choisi dans une liste

#1

Message par pierrotm777 »

Bonjour,
J'ai deux petits soucis !
-Editer un fichier choisi dans une liste
-Fermer une fenêtre fille sans fermer la fenêtre principale

Pour le premier problème , j'essai donc cela:
► Afficher le texte
Mais avec une erreur au bout !

Pour le problème de fermeture de la fenêtre fille , je ne sais pas comment faire !

Merci de votre aide
Modifié en dernier par pierrotm777 le lun. 07 mars 2011 14:09, modifié 2 fois.
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11824
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [..] Edition d'un fichier chois dans une liste

#2

Message par Tlem »

Une re-lecture du titre de votre sujet est requise ...
Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
pierrotm777
Membre émérite
Membre émérite
Messages : 770
Enregistré le : sam. 11 oct. 2008 14:44
Localisation : Bordeaux
Status : Hors ligne

Re: [..] Edition d'un fichier choisi dans une liste

#3

Message par pierrotm777 »

Désolé :D
pierrotm777
Membre émérite
Membre émérite
Messages : 770
Enregistré le : sam. 11 oct. 2008 14:44
Localisation : Bordeaux
Status : Hors ligne

Re: [..] Edition d'un fichier choisi dans une liste

#4

Message par pierrotm777 »

Bon , he bien j'ai trouvé une solution à mon premier problème:

J'ai remplacé:

Code : Tout sélectionner

Dim $SkinList = _FileListToArray(@ScriptDir,"*.txt",1)
For $i = 1 To $SkinList[0]
    GUICtrlSetData($AllSkinList, $SkinList[$i])
Next
par:

Code : Tout sélectionner

_GUICtrlListBox_Dir($AllSkinList,@ScriptDir & "\"&GUICtrlRead($EditSelectedFilter))
Ce qui évite de passer par un tableau.
J'ai rajouté un filtre créé par un combo !
► Afficher le texte
La partie rouge permet de de choisir une ligne de la liste.
La partie verte permet de choisir selon le combo avec une mise à jour automatique .
Modifié en dernier par pierrotm777 le sam. 05 mars 2011 20:32, modifié 2 fois.
oOanthonyOo
Niveau 1
Niveau 1
Messages : 14
Enregistré le : lun. 08 févr. 2010 01:20
Status : Hors ligne

Re: [..] Edition d'un fichier choisi dans une liste

#5

Message par oOanthonyOo »

Si tu peu post une indication de comment tu l'as résolu sa permettra a tout utilisateur passant par la de pouvoir essayer a leur tour de faire sa.
Anthony.
1ere Année Bts IG option Développement.
► Afficher le texte
overflow
Niveau 5
Niveau 5
Messages : 138
Enregistré le : sam. 05 déc. 2009 23:49
Status : Hors ligne

Re: [..] Edition d'un fichier choisi dans une liste

#6

Message par overflow »

pour la fermeture de la gui fille tu peu t orienter vers un truc comme ca :

Code : Tout sélectionner

$MaForm=GUICreate("My GUI")  ; cration d une gui

bla bla code 
bla bla code

GUIDelete($Maform) ; effacement de gui
 
et si tu ne met pas d infos entre parenthèse cela delete la gui active
pierrotm777
Membre émérite
Membre émérite
Messages : 770
Enregistré le : sam. 11 oct. 2008 14:44
Localisation : Bordeaux
Status : Hors ligne

Re: [..] Edition d'un fichier choisi dans une liste

#7

Message par pierrotm777 »

Oui mais ça c'est sur un bouton !

Mon besoin est de pouvoir fermer une fenêtre avec la croix en haut à droite de celle ci sans fermer l'ensemble du script !
Avatar du membre
sksbir
Niveau 7
Niveau 7
Messages : 384
Enregistré le : lun. 26 oct. 2009 17:57
Localisation : Lyon
Status : Hors ligne

Re: [..] Edition d'un fichier choisi dans une liste

#8

Message par sksbir »

Bonjour

La partie du code qui s'exécute quand on ferme une fenetre est pourtant accessible, elle est même inscrite dans ton script:

Code : Tout sélectionner

Case $GUI_EVENT_CLOSE
exit
 
Sauf que dans ton cas, il faut bien sûr faire autre chose que juste "exit" : Tu dois analyser quelle fenêtre est active, et en fonction de laquelle est active, conduire soit un exit, soit juste un guidelete comme suggéré.
pierrotm777
Membre émérite
Membre émérite
Messages : 770
Enregistré le : sam. 11 oct. 2008 14:44
Localisation : Bordeaux
Status : Hors ligne

Re: [..] Edition d'un fichier choisi dans une liste

#9

Message par pierrotm777 »

Oui, mais elle ferme non seulement la fenêtre fille mais aussi le script !
Je voudrait éviter d'avoir à passer par un bouton avec Guidelete($fifille)
Avatar du membre
matwachich
Membre émérite
Membre émérite
Messages : 986
Enregistré le : lun. 19 oct. 2009 04:04
Localisation : Algérie
Status : Hors ligne

Re: [..] Edition d'un fichier choisi dans une liste

#10

Message par matwachich »

Dans mes programmes, je fait toujours mes fenêtres de configuration (fenêtres filles) de la même manière:
► Afficher le texte
De cette manière, la gui fille est créer des le début du script, et on ne fait que la caché/montré lorsque on en a besoin
Sortons VW du coté obscure! - La curiosité est un vilain défaut! Cliquez ici
pierrotm777
Membre émérite
Membre émérite
Messages : 770
Enregistré le : sam. 11 oct. 2008 14:44
Localisation : Bordeaux
Status : Hors ligne

Re: [..] Edition d'un fichier choisi dans une liste

#11

Message par pierrotm777 »

Là, vous utilisée un bouton annuler !
C'est impossible de tester quelle fenêtre demande à être fermée par ce bouton X ?
Avatar du membre
sksbir
Niveau 7
Niveau 7
Messages : 384
Enregistré le : lun. 26 oct. 2009 17:57
Localisation : Lyon
Status : Hors ligne

Re: [..] Edition d'un fichier choisi dans une liste

#12

Message par sksbir »

pierrotm777 a écrit :Oui, mais elle ferme non seulement la fenêtre fille mais aussi le script !
Je voudrait éviter d'avoir à passer par un bouton avec Guidelete($fifille)
Je pense que tu n'as pas très bien compris ce que je raconte. Alors, fait le test suivant : remplace la portion de code suivante

Code : Tout sélectionner

Case $GUI_EVENT_CLOSE
exit
par celle ci

Code : Tout sélectionner

Case $GUI_EVENT_CLOSE
msgbox(0,"test","coucou") ; ya plus "exit" ici!!
et essaye ensuite de fermer tes fenêtres...
pierrotm777
Membre émérite
Membre émérite
Messages : 770
Enregistré le : sam. 11 oct. 2008 14:44
Localisation : Bordeaux
Status : Hors ligne

Re: [..] Edition d'un fichier choisi dans une liste

#13

Message par pierrotm777 »

Oui est là je ne ferme plus aucune fenêtre !
J'avais déjà essayé ça !
Avatar du membre
sksbir
Niveau 7
Niveau 7
Messages : 384
Enregistré le : lun. 26 oct. 2009 17:57
Localisation : Lyon
Status : Hors ligne

Re: [..] Edition d'un fichier choisi dans une liste

#14

Message par sksbir »

Evidemment, c'était un exemple pour te montrer que quand on clique sur la croix, ça ne ferme pas le programme, mais ça exécute la portion de code qui est là pour ça!

Comme je l'ai expliqué précédemment, l'instruction exit doit être conditionnée pour n'agir que quand on ferme la fenêtre "mère".

dans cet exemple, $MAFENETRE1, c'est la fenêtre "fille", celle pour laquelle le script ne doit pas se finir quand on la ferme.
Pour ton script ça doit être $AllSkinFilesGUI...

Code : Tout sélectionner

Case $GUI_EVENT_CLOSE
$TEST=wingetstate($MAFENETRE1)
if bitand($TEST,8) then
guidelete($MAFENETRE1)
else
exit
endif
 
pierrotm777
Membre émérite
Membre émérite
Messages : 770
Enregistré le : sam. 11 oct. 2008 14:44
Localisation : Bordeaux
Status : Hors ligne

Re: [..] Edition d'un fichier choisi dans une liste

#15

Message par pierrotm777 »

J'ai trouvé sur le forum anglais cette solution qui semble fonctionner.
Je regarde si cela fonctionne avec plusieurs fenêtres filles quelque soit leur position d'ouverture !
► Afficher le texte
pierrotm777
Membre émérite
Membre émérite
Messages : 770
Enregistré le : sam. 11 oct. 2008 14:44
Localisation : Bordeaux
Status : Hors ligne

Re: [..] Edition d'un fichier choisi dans une liste

#16

Message par pierrotm777 »

Je viens de faire le test avec cette solution qui fonctionne trés bien !
► Afficher le texte
Merci pour votre aide :D
Répondre