[R] Lire l'état d'un bouton radio

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
Avatar du membre
softwater
Niveau 3
Niveau 3
Messages : 44
Enregistré le : mer. 14 janv. 2009 17:12
Status : Hors ligne

[R] Lire l'état d'un bouton radio

#1

Message par softwater »

Bonjour,

J'ai une application avec un quarantaine de boutons radio. Aucun problème pour exécuter une action après sélection d'un bouton radio.

Mon problème est que pendant l'exécution du traitement l'utilisateur peut le stopper. Ce qui fait que je désire mettre en rouge l'arrière plan du bouton radio qui est sélectionné (ça je sais faire :wink: ). Par contre je ne parviens pas à relire quel bouton radio est cocher en utilisant une variable dynamique pour éviter d'écrire autant de lignes qu'il y a de bouton. (voir fonction _checkChecked).
► Afficher le texte
Merci pour vos solutions.
Modifié en dernier par softwater le mer. 14 déc. 2011 08:19, modifié 1 fois.
Avatar du membre
sylvanie
Niveau 11
Niveau 11
Messages : 1556
Enregistré le : jeu. 26 juil. 2007 21:31
Localisation : Paris
Status : Hors ligne

Re: [..] Lire l'état d'un bouton radio

#2

Message par sylvanie »

Bonjour
Essayez :

Code : Tout sélectionner

_ArrayAdd($listBtn, Eval("radio"& $a + 1))
 
Attention j'insiste sur le fait que "radio" n'est pas précédé de "$", cf fonction Eval
Toi qui cherche à mettre le doigt sur la solution, appuie sur F1.
Avatar du membre
TommyDDR
Modérateur
Modérateur
Messages : 2130
Enregistré le : mar. 22 juil. 2008 21:55
Localisation : Nantes
Status : Hors ligne

Re: [..] Lire l'état d'un bouton radio

#3

Message par TommyDDR »

Et dieu inventa les tableaux. (Je n'ai rien contre _Arrayxxx mais dans votre cas, un simple tableau basique suffit amplement)

Voici un code indiquant l'état des radios :
► Afficher le textecode
3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679
Avatar du membre
zeshrek
Niveau 10
Niveau 10
Messages : 984
Enregistré le : mer. 17 nov. 2010 09:31
Localisation : Sur ma chaise
Status : Hors ligne

Re: [..] Lire l'état d'un bouton radio

#4

Message par zeshrek »

Sinon, même principe mais en utilisant juste un petit tableau pour les $radio, plutot que de leur donner a chacun un nom different
► Afficher le texte
Edit : grilled !
Si vis pacem para bellum
Avatar du membre
sylvanie
Niveau 11
Niveau 11
Messages : 1556
Enregistré le : jeu. 26 juil. 2007 21:31
Localisation : Paris
Status : Hors ligne

Re: [..] Lire l'état d'un bouton radio

#5

Message par sylvanie »

<mode Stroumpf grognon> Moi j'aime pas les tableaux :mrgreen: </mode Stroumpf grognon>

Code : Tout sélectionner

#include <GUIConstantsEx.au3>

Opt("GUIOnEventMode", 1)

Dim $Gui
$Nbmax=10

$Gui = GUICreate("test", 100, 300)
GUISetOnEvent($GUI_EVENT_CLOSE, "quit")
For $i = 0 To $Nbmax-1
    Assign("Radio"&$i , GUICtrlCreateRadio("Radio " & $i, 10, 10+$i*25, 80, 20))
Next
$Bouton = GUICtrlCreateButton("Check", 10, 10+$Nbmax*25, 80, 20)
GUICtrlSetOnEvent($Bouton, "Check")
GUISetState()

While(True)
    Sleep(10)
WEnd

Func Check()
    Local $Check = ""
    For $i = 0 To $Nbmax-1
        $Check &= "Radio " & $i & " : " & _IsChecked(Eval("Radio"&$i)) & @CRLF
    Next
    MsgBox(0, "", $Check)
EndFunc

Func _IsChecked($ctrl)
    Return BitAND(GUICtrlRead($ctrl), $GUI_CHECKED) = $GUI_CHECKED
EndFunc

Func quit()
    Exit
EndFunc

 
Toi qui cherche à mettre le doigt sur la solution, appuie sur F1.
Avatar du membre
softwater
Niveau 3
Niveau 3
Messages : 44
Enregistré le : mer. 14 janv. 2009 17:12
Status : Hors ligne

Re: [R] Lire l'état d'un bouton radio

#6

Message par softwater »

Hello,
Merci pour vos solutions, ça fonctionne à merveille.
A+
Répondre