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

Discussion :

QSlider et valeur float

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Inactif
    Inscrit en
    Octobre 2008
    Messages
    826
    Détails du profil
    Informations forums :
    Inscription : Octobre 2008
    Messages : 826
    Par défaut QSlider et valeur float
    Bonjours,J'ai fais un petit QSlider avec des valeurs float comprise entre 0 et 1.

    Mais évidemment un problème de taille s'oppose a moi, en effet dans les signaux j'utilise valueChanged(int) et cette fonction ne prend en charge que les int et pas les float.

    De ce fait avec la méthode de débogage je peux voir que ma valeur retournée n'est autre que 0 ou 1, et je peux conclure que si la valeur est 0.4 sa arrondi a 0.

    Quelqu'un une solution pour outrepassé ce désagrément ?

    Je vous remercie

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Juin 2011
    Messages
    25
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2011
    Messages : 25
    Par défaut
    Salut,

    Tu veux régler l'opacité de ta fenêtre avec un slider(une intuition).

    Tu définis comme minimum 0 et maximum 10 au slider et ensuite dans ton slot tu divise la valeur par 10.

  3. #3
    Inactif
    Inscrit en
    Octobre 2008
    Messages
    826
    Détails du profil
    Informations forums :
    Inscription : Octobre 2008
    Messages : 826
    Par défaut
    Non c'est pour gerer le "scale" d'un object en 3D.

    Pour ta solution j'ai essayé mais hélas cela ne marche pas.

    La valeur retourné est toujours 1 ou 0, comme si c’était arrondi au entier inférieur ou supérieur.

    Mais sa je l'ai déjà précisé plus haut.

  4. #4
    Invité
    Invité(e)
    Par défaut
    Bonsoir,
    Il me semble avoir déjà été confronté à ça : je ne suis plus très sûr mais tu peux essayer ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    float f, g; // f le résultat de la division et g un nombre à virgule
    int val; // l'entier de ton slider compris entre 1 et 10
    (...)
    g=val; // on passe l'entier dans un float : ex : 2 devient 2.0000
    f=g/10; // et c'est gagné ! (enfin j'espère :?)
    Sous réserve...

    Bonne soirée. Cordialement, Gizmo.

  5. #5
    Inactif  


    Homme Profil pro
    Inscrit en
    Novembre 2008
    Messages
    5 288
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Secteur : Santé

    Informations forums :
    Inscription : Novembre 2008
    Messages : 5 288
    Par défaut
    Bonjour

    Attention : le problème vient surement du fait que tu fais une division entière puis que tu stockes le résultat dans une variable réelle. Le résultat est alors 0 ou 1.
    Il faut donc, comme le précise gizmo27, forcer l'utilisation de la division réelle. Par contre, pas besoin de créer une variable spécifiquement. Par exemple (il y a d'autres méthodes) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    int value = 9;
    float fvalue = 1.0 * value / 10;

  6. #6
    Invité
    Invité(e)
    Par défaut
    Salut,
    J'ai regardé dans mes topics : pour plus d'explications regardes par ici (c'était il y a très longtemps )
    En fait ici tu peux aussi faire comme ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    float f;
    int val;
    (...)
    f=((double) val)/10;
    Tu as 3 écritures différentes. Tu choisis celle que tu veux.

    Bonne journée à toi. Cordialement, Gizmo.
    Dernière modification par Invité ; 02/08/2011 à 11h10.

Discussions similaires

  1. Problème chargment des valeurs float dans la table de fait
    Par nannou86 dans le forum Développement de jobs
    Réponses: 0
    Dernier message: 20/04/2011, 14h35
  2. update valeurs float
    Par badi3a82 dans le forum Développement
    Réponses: 2
    Dernier message: 03/12/2010, 22h37
  3. Réponses: 3
    Dernier message: 04/05/2009, 10h43
  4. utiliser une valeur float pour une boucle for
    Par didi59650 dans le forum Débuter
    Réponses: 6
    Dernier message: 18/04/2006, 17h32
  5. Tester la valeur(float ou pas) d'un input text
    Par Battosaiii dans le forum Général JavaScript
    Réponses: 23
    Dernier message: 16/04/2006, 10h47

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