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

Qt Discussion :

[QDoubleSpinBox] Bogue étrange


Sujet :

Qt

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre actif
    Homme Profil pro
    Inscrit en
    Mars 2010
    Messages
    60
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mars 2010
    Messages : 60
    Par défaut [QDoubleSpinBox] Bogue étrange
    Bonjour,

    Il semble que j'ai un bug pour le moins étrange (dont l'origine se situe probablement entre la chaise et le clavier, mais cela m'échappe tout de même) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
     
    void WindowConfiguration_ForceExt_Trochoide::loadChoose()
    {
        QString fileName = QFileDialog::getOpenFileName(this,tr("choose spectrum"));
        T->loadSpectrum(fileName.toStdString());
     
        A->setValue(T->getAmplitude());
        lambda->setValue(T->getLongueurOnde());
        theta->setValue(T->getDeviation());
        f->setValue(T->getFrequency());
        phi->setValue(T->getDephasage());
     
        cout<<T->getAmplitude()<<" "<<T->getLongueurOnde()<<" "<<T->getDeviation()<<" "<<T->getFrequency()<<" "<<
                T->getDephasage()<<endl;
        cout<<A->value()<<" "<<lambda->value()<<" "<<theta->value()<<" "<<f->value()<<" "<<phi->value()<<endl;
    }
    Voici la fonction de lecture du fichier :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    void ForceExt_Trochoide::loadSpectrum(string fileName)
    {
        FILE * f = fopen(fileName.c_str(),"r");
        if(f!=NULL)
        {
            fscanf(f,"A:%f \n f:%f \n lambda:%f \n phi:%f \n theta:%f ",
                    &(this->A),&(this->f),&(this->lambda),&(this->phi),&(this->theta));
            cout<<this->A<<" "<<this->f<<" "<<this->lambda<<" "<<this->phi<<" "<<this->theta<<endl;
            fclose(f);
        }
    }
    Et voici la sortie standard (pour les deux dernières lignes il s'agit des valeurs par défaut dans les champs de saisie, excepté le 66 qui a bien été modifié) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    66 11 12 13 14
    66 2.8 7.8 1.33 0
    66 2.8 7.8 1.33 0
    Voici le contenu du fichier :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    A:66,000000 
    f:11,000000
    lambda:12,000000
    phi:13,000000
    theta:14,000000
    Voici la sortie après un deuxieme appel :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    66 11 12 13 14
    66 12 7.8 1.33 0
    66 12 7.8 1.33 0
    etc ...

    Comme vous pouvez le voir une seule variable est lue par appel, la raison m'échappe mais j'imagine que cela est pourtant trivial.

    Egalement ce sujet n'a peut être pas sa place dans le forum Qt, mais au cas où ...

    Merci d'avance pour votre aide.

  2. #2
    yan
    yan est déconnecté
    Rédacteur
    Avatar de yan
    Homme Profil pro
    Ingénieur expert
    Inscrit en
    Mars 2004
    Messages
    10 035
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur expert
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2004
    Messages : 10 035
    Par défaut
    Salut
    Tu es sur de ta classe T ??

  3. #3
    Membre actif
    Homme Profil pro
    Inscrit en
    Mars 2010
    Messages
    60
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mars 2010
    Messages : 60
    Par défaut
    Bonjour et merci de ta réponse.

    Si la question est qu'il s'agisse bien d'un objet de type ForceExt_Trochoide, oui je viens de vérifier à l'instant dans la définition de la classe :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    private:
        ForceExt_Trochoide *T;

  4. #4
    yan
    yan est déconnecté
    Rédacteur
    Avatar de yan
    Homme Profil pro
    Ingénieur expert
    Inscrit en
    Mars 2004
    Messages
    10 035
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur expert
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2004
    Messages : 10 035
    Par défaut
    Oui je parle de cette classe.
    Pour moi

    getLongueurOnde(), getDeviation(), getFrequency() et getDephasage() ne retourne pas
    f, lambda, phi et theta.


    Peux tu montrer la classe ForceExt_Trochoide ?

  5. #5
    Membre actif
    Homme Profil pro
    Inscrit en
    Mars 2010
    Messages
    60
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mars 2010
    Messages : 60
    Par défaut
    Je viens également de vérifier et cela semble pourtant correspondre :
    (il s'agit de getters hérités)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
     
    float ForceExt_Periodic::getAmplitude()
    {
    	return A;
    }
     
    float ForceExt_Periodic::getLongueurOnde()
    {
    	return lambda;
    }
     
    float ForceExt_Periodic::getDeviation()
    {
    	return theta;
    }
     
    float ForceExt_Periodic::getFrequency()
    {
    	return f;
    }
     
    float ForceExt_Periodic::getDephasage()
    {
    	return phi;
    }

Discussions similaires

  1. [2.x] [Routage] app_dev.php : bogue étrange
    Par jabaroff dans le forum Symfony
    Réponses: 6
    Dernier message: 31/03/2013, 04h35
  2. [regex][string] replaceAll bogué ?
    Par 7eme dans le forum Collection et Stream
    Réponses: 4
    Dernier message: 13/11/2003, 16h36
  3. Réponses: 2
    Dernier message: 22/09/2003, 11h23
  4. Affichage étrange sous directGraphic
    Par Cyrik dans le forum DirectX
    Réponses: 7
    Dernier message: 13/09/2003, 13h29
  5. Fonction étrange
    Par Defrag dans le forum Flash
    Réponses: 3
    Dernier message: 17/07/2003, 19h01

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