[R] Pb script pour remplir un champ par rapport a une liste

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
africanism
Niveau 4
Niveau 4
Messages : 85
Enregistré le : mar. 24 juin 2008 20:05
Status : Hors ligne

[R] Pb script pour remplir un champ par rapport a une liste

#1

Message par africanism »

Bonjour a tous
voila je debute
je vient de faire un script mais je bloque sur un truc j'ai fait un menu avec des champ

j'ai un champ liste

Code : Tout sélectionner

GUICtrlCreateCombo("Domaine", 144, 152, 201, 25)
$Domaine1 = GUICtrlSetData (-1, "D1|PHARMA")
quel est la commande send pour reseigner par rapport au choix que j'ai fait dans la liste.

Merci a tous
Modifié en dernier par africanism le mar. 25 nov. 2008 17:43, modifié 1 fois.
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11796
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [..] Pb script pour remplir un champ par rapport a une liste

#2

Message par Tlem »

En fait, vous confondez certaines choses.
La commande Send n'est généralement utilisée que pour contrôler une autre application que la votre.

Dans votre cas, vous devriez attribuer la variable $Domaine1 à la ligne GUICtrlCreateCombo("Domaine", 144, 152, 201, 25) car comme cela la variable contiendra le handle du combo que vous venez de créer.
Ce handle vous permettra par la suite de lire ou écrire le contrôle.

La ligne devrait donc être :

Code : Tout sélectionner

$Domaine1 = GUICtrlCreateCombo("Domaine", 144, 152, 201, 25)
Ensuite la ligne GUICtrlSetData (-1, "D1|PHARMA") vous permet de mettre les valeurs D1 et PHARMA dans le contrôle.
La variable -1 est là pour signaler que l'action est faite pour le contrôle qui précède et donc si vous devez mettre cette ligne ailleurs dans votre code, il faudra remplacer le -1 par le handle du contrôle concerné.

Voilà, je pense que le décor est planté et que la création d'un contrôle associé à une variable ainsi que l'attribution d'une valeur à celui-ci par son handle vous parait moins obscure (si ça l'était bien sur).

Ensuite pour répondre à votre question, il y à deux solution pour faire ce que vous cherchez à faire.
Soit lors de l'attribution des valeurs du Combo :

Code : Tout sélectionner

GUICtrlSetData (-1, "D1|PHARMA", "PHARMA")
soit n'importe ou dans votre code avec ceci :

Code : Tout sélectionner

GUICtrlSetData ($Domaine1, "PHARMA)"
Et comme je suis parti pour les explications, lorsque vous aurez besoin de lire la valeur sélectionnée dans le Combo, un simple :

Code : Tout sélectionner

$Choix = GUICtrlRead($Domaine1)
vous renverra la valeur sélectionnée. :mrgreen:
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é".
africanism
Niveau 4
Niveau 4
Messages : 85
Enregistré le : mar. 24 juin 2008 20:05
Status : Hors ligne

Re: [..] Pb script pour remplir un champ par rapport a une liste

#3

Message par africanism »

merci pour ta reponse
je l'ai mit en application

Code : Tout sélectionner

$Form1 = GUICreate("Form1", 633, 447, 193, 125)
$NomPC = GUICtrlCreateLabel("Nom du Poste", 144, 32, 71, 17)
$Domaine = GUICtrlCreateLabel("Domaine", 144, 112, 46, 17)
$Site = GUICtrlCreateLabel("Site", 144, 192, 22, 17)
$User = GUICtrlCreateLabel("User", 144, 273, 26, 17)
$Password = GUICtrlCreateLabel("Password", 144, 353, 50, 17)
$Input1 = GUICtrlCreateInput("Sxxxxxx", 144, 72, 201, 21)
$Domaine1 = GUICtrlCreateCombo("", 144, 152, 201, 25)
GUICtrlSetData (-1, "D1|PHARMA", "PHARMA")
$Site1 = GUICtrlCreateCombo("", 144, 233, 201, 25)
GUICtrlSetData (-1, "GTLYA|GTLYB", "GTLYB")
$Input2 = GUICtrlCreateInput("", 144, 313, 201, 21)
$Input3 = GUICtrlCreateInput("", 144, 393, 201, 21, BitOR($ES_PASSWORD,$ES_AUTOHSCROLL))
$OK = GUICtrlCreateButton("OK", 432, 176, 129, 113, 0)
GUISetState(@SW_SHOW)
maintenant comme je peut replir cette ligne par rapport a ce qui a ete replit dans le menu.

Code : Tout sélectionner

netdom renamecomputer Sxxxxxx /newname:nouveau_nom_ordinateur /userd:domaine\nom_utilisateur /passwordd:mot_de_passe
CDT ET MERCI
Modifié en dernier par Tlem le mar. 25 nov. 2008 11:59, modifié 1 fois.
Raison : Modification des balises de code.
africanism
Niveau 4
Niveau 4
Messages : 85
Enregistré le : mar. 24 juin 2008 20:05
Status : Hors ligne

Re: [..] Pb script pour remplir un champ par rapport a une liste

#4

Message par africanism »

c'est bon j'ai trouve la commande en testant un peu.

Code : Tout sélectionner

send("netdom renamecomputer Sxxxxxx /newname:"& guictrlread($Input1)&" /userd:"& guictrlread($Input2)&" /passwordd:"& guictrlread($input3)&" /force")
Modifié en dernier par Tlem le mar. 25 nov. 2008 11:59, modifié 1 fois.
Raison : Modification des balises de code.
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11796
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [..] Pb script pour remplir un champ par rapport a une liste

#5

Message par Tlem »

La coloration syntaxique du code est réservée aux forums :
  • - Exemples de script
    - Fonctions et UDF
    - Tutoriels
Merci.
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é".
Répondre