IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Python Discussion :

Modifier dynamiquement un radiobutton sous wx


Sujet :

Python

  1. #1
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2013
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2013
    Messages : 28
    Points : 14
    Points
    14
    Par défaut Modifier dynamiquement un radiobutton sous wx
    Bonjour,

    Je souhaite modifier de façon dynamique un radiobutton. En fait, je souhaite l'activer et le désactiver suivant les cas de figures.
    Pour cela, j'ai ce bout de code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    nom="self.rb_"+str(oss)   #nom du radiobutton à modifier
     
                if haut> h_limite: 
                    setattr(nom,"Enable",False)
                else: 
                    setattr(nom,"Enable",True)
    Le probléme c'est que"nom" est une chaîne de caractéres et j'ai donc l'erreur suivante: AttributeError: 'str' object has no attribute 'Enable'
    C'est logique mais je ne sais pas comment faire. Je bloque là dessus
    Si quelqu'un a une idée, je suis preneur.
    Merci beaucoup et bonne journée

  2. #2
    Expert éminent
    Avatar de jurassic pork
    Homme Profil pro
    Bidouilleur
    Inscrit en
    Décembre 2008
    Messages
    3 957
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Bidouilleur
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2008
    Messages : 3 957
    Points : 9 297
    Points
    9 297
    Par défaut
    Hello,
    tu peux essayer un truc du genre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
                if haut> h_limite: 
                    getattr(self, "rb_"+str(oss) ).Enable(False)
                else: 
                    getattr(self, "rb_"+str(oss)).Enable(True)
    Ami calmant, J.P
    Jurassic computer : Sinclair ZX81 - Zilog Z80A à 3,25 MHz - RAM 1 Ko - ROM 8 Ko

  3. #3
    Expert confirmé Avatar de papajoker
    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2013
    Messages
    2 114
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nièvre (Bourgogne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2013
    Messages : 2 114
    Points : 4 470
    Points
    4 470
    Par défaut
    Bonjour

    peut-être que le plus simple est de placer les radios dans un dictionnaire ? Comme cela le "nom" est aussi une chaine.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    self.radios["verte"] = RadioButton(xxxx)
    self.radios["rouge"] = RadioButton(xxxx)
    ...
    couleur="verte"
    self.radios[couleur].Value = haut > h_limite
    Note: haut> h_limite est un booléan, donc aucune raison d'utiliser un if else puisque nous passons justement un booléan à notre bouton
    $moi= ( !== ) ? : ;

  4. #4
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2013
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2013
    Messages : 28
    Points : 14
    Points
    14
    Par défaut
    Citation Envoyé par papajoker Voir le message
    Bonjour

    peut-être que le plus simple est de placer les radios dans un dictionnaire ? Comme cela le "nom" est aussi une chaine.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    self.radios["verte"] = RadioButton(xxxx)
    self.radios["rouge"] = RadioButton(xxxx)
    ...
    couleur="verte"
    self.radios[couleur].Value = haut > h_limite
    Note: haut> h_limite est un booléan, donc aucune raison d'utiliser un if else puisque nous passons justement un booléan à notre bouton
    Merci beaucoup. C'est exactement ce que je cherchais

Discussions similaires

  1. [DOM] Récuperation valeur Select modifié dynamiquement sous Explorer
    Par camcam8782 dans le forum Général JavaScript
    Réponses: 13
    Dernier message: 31/03/2009, 10h49
  2. Réponses: 7
    Dernier message: 21/07/2006, 08h56
  3. VertexBuffer d'un Mesh modifiable dynamiquement ?
    Par Imhotep dans le forum DirectX
    Réponses: 7
    Dernier message: 10/07/2004, 15h23
  4. [vb6] Modifier structure table Access sous VB6
    Par jlvalentin dans le forum VB 6 et antérieur
    Réponses: 10
    Dernier message: 25/03/2004, 17h45
  5. Chargement dynamique de DLL sous Unix
    Par Willou dans le forum Autres éditeurs
    Réponses: 7
    Dernier message: 18/12/2002, 18h25

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo