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

PyQt Python Discussion :

Ecrire dans un SpinBox


Sujet :

PyQt Python

  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2014
    Messages
    24
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2014
    Messages : 24
    Par défaut Ecrire dans un SpinBox
    Salut a tous,

    J'aimerai savoir comment on écrit dans un SpinBox après avoir ouvert un fichier text.

    C'est a dire tout simplement, écrire le data du fichier text dans le Spinbox.

    Voici le code pour ouvrir le data :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    f = QtCore.QFile("C:/Users/ssrinivasa/Desktop/texto.txt")      
    f.open(QtCore.QIODevice.ReadOnly)      
    data = f.read(f.size())
    Merci d'avance.

    dhoomh

  2. #2
    Expert confirmé
    Avatar de tyrtamos
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2007
    Messages
    4 486
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2007
    Messages : 4 486
    Billets dans le blog
    6
    Par défaut
    Bonjour,

    Tu n'arriveras pas à développer avec une bibliothèque graphique sans avoir la doc constamment disponible à l'écran. Ou alors tu vas y passer un temps dingue... La question que tu poses ne te prendrait que quelques secondes. Mais elle prend plusieurs minutes pour quelqu'un qui te répond, et plusieurs heures d'attentes pour toi.

    Il y a une doc sur ce site. Pour QSpinBox: http://qt.developpez.com/doc/4.7/qspinbox/

    si x est un entier et spinbox le widget QSpinBox:
    - on écrit dans le QSpinBox avec spinbox.setValue(x)
    - on lit la valeur du QSpinBox avec x = spinbox.value()

    Et si on a un entier sous forme de chaine de caractères data: on la convertit en entier avec int => x=int(data)

  3. #3
    Expert confirmé

    Homme Profil pro
    Inscrit en
    Octobre 2008
    Messages
    4 304
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2008
    Messages : 4 304
    Par défaut
    Salut,

    Tu peux le faire avec QSpinBox.setValue(value) mais tu dois convertir ta valeur en entier avant cela.

  4. #4
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2014
    Messages
    24
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2014
    Messages : 24
    Par défaut
    Merci pour la réponse,

    mais quel est la fonction qui permet de lire une ligne et attribuer la valeur présent dans la ligne au spinbox ?

  5. #5
    Expert confirmé
    Avatar de tyrtamos
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2007
    Messages
    4 486
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2007
    Messages : 4 486
    Billets dans le blog
    6
    Par défaut
    Citation Envoyé par dhoomh Voir le message
    mais quel est la fonction qui permet de lire une ligne et attribuer la valeur présent dans la ligne au spinbox ?
    Donne un exemple de ligne et ce que tu veux en extraire.

  6. #6
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2014
    Messages
    24
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2014
    Messages : 24
    Par défaut
    Voici un exemple de fichier text :
    1
    2
    3
    4

    Mettre 1 dans le spinbox_1
    mettre 2 dans le spinbox_2


    Merci d'avance

  7. #7
    Expert confirmé
    Avatar de tyrtamos
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2007
    Messages
    4 486
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2007
    Messages : 4 486
    Billets dans le blog
    6
    Par défaut
    Pour un fichier texte comme ça, tu peux utiliser les fonctions de Python.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    with open("C:/Users/ssrinivasa/Desktop/texto.txt") as f:
        x = int(f.readline().rstrip())
        spinbox_1.setValue(x)
        x = int(f.readline().rstrip())
        spinbox_2.setValue(x)
    La méthode rstrip permet de supprimer les caractères de fin de ligne.

  8. #8
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2014
    Messages
    24
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2014
    Messages : 24
    Par défaut
    il y a un probléme avec x.

    il me dit : expected an indented block

    Merci d'avance

  9. #9
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2014
    Messages
    24
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2014
    Messages : 24
    Par défaut
    Et puis dans le code que ta donné, tu n'indique pas les ligne du fichier text.

    C'est normal ?

  10. #10
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2014
    Messages
    24
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2014
    Messages : 24
    Par défaut
    J'ai réglé le problème, juste pour s'amuser

    Je vait faire le sens inverse, et ecrire sur le port série.

    Je te tien au courant

  11. #11
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2014
    Messages
    24
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2014
    Messages : 24
    Par défaut
    Effectivement, quand j’écris sur le port série, j'efface la valeur précédent.

    A-tu une idée pour éviter cela ?

  12. #12
    Expert confirmé

    Homme Profil pro
    Inscrit en
    Octobre 2008
    Messages
    4 304
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2008
    Messages : 4 304
    Par défaut
    Vu ton post précédent, dont tu as effacé le code, je suppose que ce que tu appelles écrire sur le port série, c'est plutôt écrire dans le fichier.

    Tu as le choix, soit tu l'ouvres avec l'argument 'w' et le fichier sera entièrement réécrit, soit tu l'ouvres avec l'argument 'a' et les nouvelles lignes s'écriront à la fin du texte existant, soit, pour finir, tu prépares d'abord ton texte avec l'ancien texte et les modifications et tu réécrit le tout.

  13. #13
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2014
    Messages
    24
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2014
    Messages : 24
    Par défaut
    Salut merci pour ta réponse,

    ça fonctionne

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Ecrire dans un DIV.
    Par cocula dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 23/02/2005, 15h01
  2. Ecrire dans un fichier grace à un trigger ?
    Par zigoo dans le forum PostgreSQL
    Réponses: 1
    Dernier message: 29/10/2004, 20h03
  3. [VBS] Ecrire dans les Eventlog avec VBS
    Par Hakkou dans le forum VBScript
    Réponses: 1
    Dernier message: 04/10/2004, 14h50
  4. Réponses: 2
    Dernier message: 08/04/2004, 11h11
  5. Ecrire dans un fichier sans supprimer le reste
    Par koan_sabian dans le forum Linux
    Réponses: 4
    Dernier message: 20/02/2003, 15h44

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