Bienvenue sur le forum !

Si vous souhaitez rejoindre la communauté, cliquez sur l'un de ces boutons !

Qt 5 : 5.9.1 - Qt Creator : 4.3.1 - Qt Installer : 2.0.3 - JOM : 1.1.2 - Qt Build suite : 1.7.0 - VS Qt 5 : 2.0.0

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 :

f = QtCore.QFile("C:/Users/ssrinivasa/Desktop/texto.txt")
f.open(QtCore.QIODevice.ReadOnly)
data = f.read(f.size())
Merci d'avance.

dhoomh

Réponses

  • April 2014 modifié
    Salut ! Avant toute chose, une présentation dans le coin des membres est demandée aux nouveaux arrivants :-)

    Sinon pour ton problème, tu veux affecter une valeur à ton spin box selon ce qu'il y a dans ton fichier texte ? En supposant que ce dernier ne contienne qu'un nombre, quelque chose comme ça devrait suffire :

    TaSpinbox->setValue(ton_nombre_en_qstring.toInt());
    Du coup il ne te reste qu'à convertir ce que tu lis dans ton fichier texte en qstring. Sinon, simple question : un fichier texte pour stocker juste une valeur ? Pourquoi ne pas passer par une classe comme QSettings ? Elle te permet d'enregistrer tes données de config dans le registre et de les lire très facilement :-/ C'est un choix de conception ?
  • Salut merci pour ta réponse,

    Enfait il faut que la valeur qui est dans la 1er ligne du fichier text soit attribuer automatique au Spinbox.

    C'est a dire, valeur ligne 1 va vers Spinbox1
    valeur ligne 2 va vers Spinbox2

    Alors que toi, tu me propose d'écrire manuellement.

    A tu une idée ?

    Merci d'avance
  • Mais ça me dérange pas d'utiliser QSettings,

    Mais comment faire ?

    Cordialement
  • Si tu as plusieurs valeurs, tu lis ton fichier ligne par ligne, et à chaque ligne lue tu appliques ce que j'ai posté plus haut. Pour QSettings regarde dans la doc, c'est très simple d'utilisation.
  • Voici ma boucle :

    a = self.SpinBox_1.value()
    fichier = "texto.txt"
    ligne = 0
    a = ''
    for ligne in range(len(fichier)):
    if fichier[ligne] != "'" or fichier[ligne] != '(' :
    if fichier[ligne] != '*':
    a = fichier[ligne]
    break
  • J'ai pas trop touché au Python avec Qt, du coup je ne peux pas juger de la justesse de ton code. Éventuellement je peux voir pour te faire un équivalent C++ mais ça serait a toi de faire le pont entre ça et ton projet. Je regarde et je poste un zip dès que j'ai quelques minutes.
Connectez-vous ou Inscrivez-vous pour répondre.