Page 1 sur 1

[R] Problème avec une GUI et un Run...

Posté : mar. 24 nov. 2009 11:57
par Habibsbib
Bonjour. Merci de m'aider.

Voila le code :

Code : Tout sélectionner

$Executer = GUICreate("Exécuter...", 393, 145, 303, 166)
$Fichier = GUICtrlCreateInput("**************", 88, 32, 225, 21)
$Acces = GUICtrlCreateInput("**************", 88, 88, 225, 21)
$Button4 = GUICtrlCreateButton("OK !", 144, 112, 75, 25, 0)
$Text1 = GUICtrlCreateLabel("Entrez le nom du programme à exécuter :", 64, 8, 277, 18)
GUICtrlSetFont(-1, 9, 400, 0, "Consolas")
$Text2 = GUICtrlCreateLabel("Entrez le dossier dans lequel se trouve le programme :", 10, 60, 382, 18)
GUICtrlSetFont(-1, 9, 400, 0, "Consolas")
GUISetState(@SW_SHOW)
While 1
    $msg = GUIGetMsg()
    Select
            Case $msg = $GUI_EVENT_CLOSE
            GUIDelete ($executer)
            ExitLoop                      
            Case $msg = $Button4
                Run ($Fichier, $Acces );==> *
            If @error Then
                    MsgBox (64, "Exécuter - Erreur", "Vous n'avez pas indiqué un bon chemin d'accès. Veuillez réessayer.")
                        ContinueLoop
            Else
                MsgBox (64, "Exécuter...", "Lancement en cours...")
            EndIf
    EndSelect
WEnd
Je ne sais pas comment programmer mon Run (ciblé avec ;==> * dans mon code) pour qu'il lance un programme selon les deux Inputs que j'ai codés.


Merci d'avance pour vôtre aide :wink:

Re: [..] Problème avec une GUI et un Run...

Posté : mar. 24 nov. 2009 12:24
par ani
pb1: Pourriez-vous nous dire à quoi correspond le paramètre accés ? est-ce le dossier de travail (dossier parent) ou se trouve votre fichier à executer? Un petit exemple svp.

pb2: GuiDelete($executer)

Au niveau de votre condition "if @error ..." et "if not @error" n'est pas une erreur mais le mieux serait plutot if @error then <condition> else <condition> = si erreur alors faire çà sinon çà.

Voir documentation condition if else
bonne continuation

Re: [..] Problème avec une GUI et un Run...

Posté : mar. 24 nov. 2009 15:14
par Habibsbib
La condition est éditée, et j'ai ajouté le GUIDelete ($executer"). Du coup, j'en ai profité pour rajouter un ExitLoop dans la case, autrement l'autre partie de mon script ne marche plus ;). Merci de votre réponse. Pour ce qui est du Run, il doit dépendre des deux Inputs que j'ai créé, le premier (Fichier), indiquant le nom du programme, et le deuxième (Accès) indiquant le chemin d'accès du programme.

==> cela dépend de ce que l'utilisateur indique dans les Inputs ;) !

Vous avez une idée ?

Re: [..] Problème avec une GUI et un Run...

Posté : mar. 24 nov. 2009 16:16
par pop45
Lol va te renseigner dans l'aide tu comprendra
► Afficher le texte

Re: [..] Problème avec une GUI et un Run...

Posté : jeu. 26 nov. 2009 13:18
par Habibsbib
Mici pop', je viens de me lancer dans le codage de GUI's, et je en savais pas qu'il fallait "traduire" les infos GUI en texte simple (je commence à avoir la nostalgie de mes InputBox, moi :cry: )

Re: [R] Problème avec une GUI et un Run...

Posté : dim. 29 nov. 2009 13:12
par Habibsbib
Ca marche pas, pop. Avant de me donner cette réponse, en as-tu toi même vérifié sa justesse ?

Re: [..] Problème avec une GUI et un Run...

Posté : dim. 29 nov. 2009 13:20
par ani
La réponse donnée par pop est correct,
pour lire un controle la fonction a utiliser sera GuiCtrlRead.
Vous pouvez testez en ajoutant

Code : Tout sélectionner

consolewrite(guictrlread($fichier) & @tab & guictrlread($access))
et en mettant en commentaire la commande run.

vous pouvez aussi ajouter le deuxième paramétre à la fonction guictrlread(controle,1) = ceux-ci retournera le texte entré dans le input

bonne continuation ;)

Re: [..] Problème avec une GUI et un Run...

Posté : dim. 29 nov. 2009 13:51
par Habibsbib
No vraiment cane marche aps ... peut être qu'il manque des guillmets ?

Re: [..] Problème avec une GUI et un Run...

Posté : dim. 29 nov. 2009 15:04
par sylvanie
si le message d'erreur et du type "le programme n'est pas trouvable", il se peut effectivement qu'il y ait un problème de guillemets dû aux éventuels espaces inclus dans le chemin de l'exe ou du fichier.
Dans ce cas :

Code : Tout sélectionner

Run('"'&guictrlread($fichier)&'" "'&guictrlread($access)&'"')
 

Re: [..] Problème avec une GUI et un Run...

Posté : dim. 29 nov. 2009 18:45
par Habibsbib
Merci beaucoup sylvanie, et merci ani et à pop également :wink: